using System; using System.Data; using System.Data.SqlClient; using System.Collections.Specialized; using System.Text; using System.Web; public partial class DatabaseClass : IDisposable { private const string CURRENT_DATABASE_IDENTIFIER = "CurrentConnection"; public SqlConnection Connection; public static DatabaseClass Current { get { object oDB = HttpContext.Current.Items[CURRENT_DATABASE_IDENTIFIER]; if (oDB != null) return (DatabaseClass)oDB; else { DatabaseClass db = new DatabaseClass(System.Configuration.ConfigurationManager.AppSettings["connectionString"]); HttpContext.Current.Items[CURRENT_DATABASE_IDENTIFIER] = db; return db; } } } public DatabaseClass(string ConnectionString) { Connection = new SqlConnection(ConnectionString); Connection.Open(); } public void Dispose() { if (Connection.State != ConnectionState.Closed) Connection.Close(); Connection.Dispose(); } public static DataRow GetDataRow(SqlCommand cmd) { SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); adapter.Fill(dt); adapter.Dispose(); if (dt.Rows.Count > 0) return dt.Rows[0]; else return null; } public static DataTable GetDataTable(SqlCommand cmd) { SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); adapter.Fill(dt); adapter.Dispose(); return dt; } }