ASP.NET应用程序&x2013;自由和最佳DAL框架

ASP.NET应用程序&x2013;自由和最佳DAL框架,asp.net,frameworks,data-access-layer,Asp.net,Frameworks,Data Access Layer,我们正在开发一个以SQL Server 2008为后端的ASP.NET应用程序,并且没有使用LINQ 在应用程序中,所有数据库调用都将使用/通过存储过程执行。因此,请任何人提出任何免费和最好的数据访问框架,可以做这些工作 非常感谢, 问候 Bhavna.我建议你选择NHibernate 如果您因为映射而不喜欢XML,可以使用Fluent NHibernate,这将允许您在强类型代码中执行所有映射(和配置)。我建议您选择NHibernate 如果由于映射而不喜欢XML,可以使用Fluent NHi

我们正在开发一个以SQL Server 2008为后端的ASP.NET应用程序,并且没有使用LINQ

在应用程序中,所有数据库调用都将使用/通过存储过程执行。因此,请任何人提出任何免费和最好的数据访问框架,可以做这些工作

非常感谢,

问候


Bhavna.

我建议你选择NHibernate


如果您因为映射而不喜欢XML,可以使用Fluent NHibernate,这将允许您在强类型代码中执行所有映射(和配置)。

我建议您选择NHibernate


如果由于映射而不喜欢XML,可以使用Fluent NHibernate,这将允许您在强类型代码中执行所有映射(和配置)。

这些存储过程是手写的吗?如果是这样,DAL的任务只是创建ADO.NET命令,并将结果集绑定到数据传输对象及其集合。对于一个严格存储过程驱动的数据库,从最好的DAL到最差的DAL不会有太大的质量差异。我建议您使用自己的手写模板生成代码,这样您就可以更好地理解结果,而且这并不难。T4模板现在很热门

现在,如果您打算放宽限制,让DAL访问基表,那么您可以选择对象关系映射器,比如NHiberate和Entity Framework,它们在质量和方法上都非常不同


如果您使用ORM作为存储过程,这就像购买航空母舰在周末休闲钓鱼一样。ORM部分会使事情复杂化,使用ORM框架不会带来任何好处。

这些存储过程是手写的吗?如果是这样,DAL的任务只是创建ADO.NET命令,并将结果集绑定到数据传输对象及其集合。对于一个严格存储过程驱动的数据库,从最好的DAL到最差的DAL不会有太大的质量差异。我建议您使用自己的手写模板生成代码,这样您就可以更好地理解结果,而且这并不难。T4模板现在很热门

现在,如果您打算放宽限制,让DAL访问基表,那么您可以选择对象关系映射器,比如NHiberate和Entity Framework,它们在质量和方法上都非常不同


如果您使用ORM作为存储过程,这就像购买航空母舰在周末休闲钓鱼一样。ORM部分会使事情复杂化,使用ORM框架不会带来任何好处。

我喜欢ActiveRecord模式,并且经常使用开源DAL亚音速。我只接触了最新版本3.0,但在我创建的项目中一直使用2.2


我喜欢ActiveRecord模式,经常使用开源DAL亚音速。我只接触了最新版本3.0,但在我创建的项目中一直使用2.2


著名的答案取决于您的需求和团队的知识:)

  • 如果您有一个现有的数据库,我会说只需使用linq或实体框架,因为您只需拖放即可轻松生成映射

  • 如果您没有数据库,那么Nhibernate将是一个不错的选择,因为您可以在从映射文件开发应用程序时生成数据库


    • 著名的答案取决于您的需求和团队的知识:)

      • 如果您有一个现有的数据库,我会说只需使用linq或实体框架,因为您只需拖放即可轻松生成映射

      • 如果您没有数据库,那么Nhibernate将是一个不错的选择,因为您可以在从映射文件开发应用程序时生成数据库


      我发现在存储的进程中使用xml参数允许使用单个方法调用所有进程。我们所有的过程都有一个xml参数,并且总是返回xml。这大大简化了DAL中所需的代码。

      我发现在存储的过程中使用xml参数允许使用单个方法调用所有过程。我们所有的过程都有一个xml参数,并且总是返回xml。这大大简化了DAL中所需的代码。

      LINQ to SQL充分支持调用SP。您能更详细地描述一下为什么它不适合您的需要吗?LINQ to SQL对调用SP的支持已经足够好了。你能更详细地描述一下为什么它不适合你的需要吗?嗨,谢谢你的回复。我可以知道在哪里可以买到这些T4模板吗?问候..@unknown-这里有一个链接到Hanselman对该技术的评论:嗨,谢谢你的回复。我可以知道在哪里可以买到这些T4模板吗?关于..@unknown-以下是Hanselman对该技术的评论链接: