linq-to-sql - linq to entities vs fluent nhibernate vs linq to sql(帮助)

标签 linq-to-sql fluent-nhibernate linq-to-entities

我必须为新闻 channel 建立一个网站..

请帮我决定使用哪种技术进行数据操作?

1) Linq to Entities 2) 链接到 SQL 3) 流利的 NHibernate 4)ADO.Net

网站将基于 ASP.Net MVC 和 C#。

主要问题:

1) 应该易于维护和扩展。

2) 良好的性能

请尽可能举例说明您的观点..

谢谢

奇特雷什

最佳答案

优缺点:

LINQ To Entities

允许您添加另一层抽象(实体)而不是直接映射到表(如在 LINQ to SQL 中)。支持多个数据提供者(不仅仅是 SQL Server)。比 LINQ to SQL 需要更多的学习时间。提供工作单元概念。中高学习曲线。

LINQ to SQL

让您可以轻松映射表、存储过程等。提供工作单元概念。仅适用于 SQL Server 后端。易于实现,但如果数据库模式发生变化(从数据库到对象的一种同步方式),则需要重建 dbml,因此维护起来有点困难。低 - 中学习曲线。性能……我认为 Stack Overflow 正在使用 LINQ to SQL。你觉得它的表现如何?有工作单元的概念。

流畅的 NHibernate

无法评论...对此一无所知。如果是像 NHibernate 这样的东西,应该是相当灵活的。可能是高学习曲线。有人纠正我这个...

ADO.NET(这里不讨论命名数据集...)

应该是最快的(没有抽象)。灵活,随心所欲地弯曲。低学习曲线。非常基本,自己做所有事情。大多数时候我走这条路是为了简单的项目。会降低生产力。您可以通过代码生成来增强它以提高工作效率。

你的其他选择......也许是亚音速。

关于linq-to-sql - linq to entities vs fluent nhibernate vs linq to sql(帮助),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1129393/

相关文章:

c# - 在 LINQ to SQL 中,通过外键添加时是否需要 InsertOnSubmit()?

c# - 如何使用 linq 进行 LIKE 查询?

.net - 奇怪的 LINQ to SQL .Union() 错误

c# - 通用表<TEntity>

C# NHibernate - 在删除时删除对对象的所有引用

c# - Entity Framework 和 DataContractSerializer

.net - 尝试使用它作为成员的类型来映射实体

NHibernate 在二级更新中设置外键,而不是在初始插入时违反键列上的 Not-Null 约束

c# - Linq-to-entities,一次查询得到结果+行数

c# - 无需 PredicateBuilder 将动态谓词添加到表达式