(编辑:我把它变成了社区维基,因为它更适合协作格式.)
从.NET访问SQL Server和其他数据库有很多种方法.所有这些都有其优点和缺点,它永远不会是一个简单的问题,哪个是"最好的" - 答案永远是"它取决于".
但是,我正在寻找不同层次系统背景下不同方法和框架的高层次比较.例如,我认为对于快速而肮脏的Web 2.0应用程序,答案与内部企业级CRUD应用程序有很大不同.
我知道Stack Overflow上有很多关于这个问题子集的问题,但我认为尝试构建一个汇总比较会很有用.我会尽力更新问题并加以纠正和澄清.
到目前为止,这是我对高层的理解 - 但我确信这是错误的......我主要关注微软的方法来保持这一点.
这些东西是完全不同的还是仅仅是标准ADO.NET的一层? - 如果您有DAL或者实施了LINQ或实体,您真的会使用这些吗?
其他一些相关链接; NHibernate或LINQ to SQL Entity Framework与LINQ to SQL
我一直在寻找比较L2S和EF的最新性能基准测试,并且无法使用EF的发布版本找到任何经过测试的调用存储过程.所以,我运行了一些自己的测试,发现了一些有趣的结果.
这些结果看起来是否合适?我应该以不同的方式进行测试吗?
上下文的一个实例,一个sproc的调用:(死链接)
上下文的一个实例,同一个sproc的多次调用:(死链接)
上下文的多个实例,同一个sproc的多次调用:(死链接)