数据库工作最可行的日期选项是使用类似实体框架的东西
你的模型是模型,你的数据库连接是独立的,你可以轻松地将应用程序移植到另一个数据库提供程序,如果需要... I.E mysql到msSQL,而不需要在工作方式上做太多。
实体框架代码首先是我认为最容易移植的代码。另外对于mysql,你只需要提供者自己的mysql.net连接器,这适用于实体框架。
通过使用模型和使用linq,您可以进一步帮助减少使用SQL注入的prodlems,因为您实际上不会编写或发送任何SQL。
鉴于此,如果你有一个庞大的数据库,EF是一个痛苦的屁股,并且非常慢,为此,一个简单的数据库类可以做,你可以有这样的一些功能:
private readonly MySqlConnection _conn = new MySqlConnection();
private MySqlCommand _myCommand = new MySqlCommand();
private readonly string _dbConn = ConfigurationManager.AppSettings["dbConn"];
public void Closedb()
{
try
{
_conn.Dispose();
_conn.Close();
}
catch (Exception ex)
{
}
}
public void UpdateDatabaseWithSql(string mysql)
{
Closedb();
_conn.ConnectionString = _dbConn;
_conn.Open();
_myCommand= new MySqlCommand(mysql,_conn);
_myCommand.ExecuteNonQuery();
Closedb();
}在web.config文件中,mysql的数据库连接如下所示:
connectionString="server=[ip];User Id=[user];password=[pass];Persist Security Info=True;database=[dbname]"
providerName="MySql.Data.MySqlClient" />希望这可以帮助