what is Microsoft.Practices.EnterpriseLibrary.Data
本文关键字:EnterpriseLibrary Data Practices Microsoft is what | 更新日期: 2023-09-27 17:54:20
我想知道Microsoft.Practices.EnterpriseLibrary.Data.dll
是什么,为什么我们使用这个程序集。
这个dll的好处是什么?
我想在三层架构上创建一个项目,我很好奇执行sql查询的最佳方式是什么。
我是否应该使用这个dll或去简单的SqlCommand
和DataAdapter
。目前我是这样工作的:(DAL文件中的代码:)
public void Insert(long id)
{
connection.Open();
SqlCommand dCmd = new SqlCommand("test_procedure", connection);
dCmd.CommandType = CommandType.StoredProcedure;
try
{
dCmd.Parameters.AddWithValue("@id", id);
dCmd.ExecuteNonQuery();
}
catch
{
throw;
}
finally
{
dCmd.Dispose();
connection.Close();
connection.Dispose();
}
}
我很困惑我是否以适当的方式工作,或者如果我应该更好地使用Microsoft.Practices.EnterpriseLibrary.Data
并使用DatabaseFactory
。
microsoft . practices . enterpriselibrlibrary . data库的主要优点是它使生成与数据库无关的代码变得更容易。开发人员主要与更通用的Database vs SqlConnection和DbCommand vs SqlCommand对象进行交互,理论上,从MSSQL切换底层数据库到Oracle的机制变得更加容易。尽管在我的开发经验中,我从未见过这种情况发生。
Microsoft.Practices.EnterpriseLibrary。Data还指导开发人员使用DbParameter作为查询参数,这降低了SQL注入攻击的风险。
Microsoft.Practices.EnterpriseLibrary.Data是ado.net核心结构的高级抽象,它使开发人员能够用最少的代码完成相同的任务。
如果你在学习数据访问策略,我建议你继续学习ado.net,你了解的基础越多,使用microsoft.practicesenterpriselibrarydata或Entity Framework或NHibernate就越有用,因为你了解了这些基础,因为这些技术都是建立在ado.net之上的