Jag har använt denna dataklass för att kommunicera med SQL Server i mina ASP.NET koder. Den fungerar mycket bra, och minimerar koden som behövs när databasen skall anropas. Den är enkel att anpassa för MySQL eller annat.
namespace CRS
{
public class Data : System.IDisposable
{
private System.Data.SqlClient.SqlCommand _command;
private System.Data.SqlClient.SqlConnection _connection;
public Data()
{
_connection = new System.Data.SqlClient.SqlConnection();
_connection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
_connection.Open();
_command = _connection.CreateCommand();
}
public void AddParameter(string name, System.Data.DbType type, object value)
{
System.Data.SqlClient.SqlParameter param = new System.Data.SqlClient.SqlParameter();
param.ParameterName = name;
param.DbType = type;
param.Value = value;
_command.Parameters.Add(param);
}
public string CommandText
{
get { return this._command.CommandText; }
set { this._command.CommandText = value; }
}
public System.Data.IDbCommand Command
{
get{ return this._command;}
}
public System.Data.IDataReader ExecuteReader()
{
return this._command.ExecuteReader();
}
public void ExecuteNonQuery()
{
this._command.ExecuteNonQuery();
}
public object ExecuteScalar()
{
return this._command.ExecuteScalar();
}
public void Dispose()
{
_connection.Close();
_command.Dispose();
_connection.Dispose();
}
}
}
För att använda den gör du som följer:
IDataReader reader;
using (CRS.Data data = new CRS.Data())
{
data.CommandText = "SELECT * FROM tabell WHERE id=@id";
data.AddParameter("@id", DbType.Int32, 1);
reader = data.ExecuteReader();
}
Happy coding!
01923952-9cb4-4dfd-b077-89ac2ef012c7|0|.0