LINQ到实体vs流利nhibernate与LINQ到SQL(帮助) [英] linq to entities vs fluent nhibernate vs linq to sql (Help)
问题描述
请帮我决定使用哪种技术进行数据操作?
1)Linq到实体
2)Linq到SQL
3)流利的NHibernate
4)ADO.Net
主要问题:
1)应该很容易维护和扩展。
<2>良好的性能
请用一个例子来表达您的看法if可能..
谢谢
Chitresh
亲和缺点:$ b
LINQ到实体
允许您添加另一个抽象层(实体),而不是直接映射到表(如在LINQ to SQL中)。支持多个数据提供者(不仅仅是SQL Server)。比LINQ to SQL需要更多的学习时间。提供工作单位的概念。中等到高的学习曲线。
LINQ to SQL
让您轻松映射你的表格,存储过程等。提供工作单元的概念。只能在SQL Server后端工作。易于实现,但如果数据库模式更改(从数据库到对象单向同步),则需要dbml重建,因此难以维护。中低学习曲线。性能,...我认为堆栈溢出是使用LINQ to SQL。你觉得它如何表现?有工作单位的概念。
$ b 流利的NHibernate
无法评论。 ..一无所知。如果它是像NHibernate的东西,应该是相当灵活的。可能高的学习曲线。有人纠正我这个... ...
$ b
ADO.NET (不是在这里讨论命名的数据集...)
应该是最快的(没有抽象)。灵活,无论如何弯曲你想要的。学习曲线低。非常基本,尽你自己的方法。我大部分时间都是为了简单的项目而走这条路。可以降低生产力。你可以用代码生成来增加它,以获得一些生产力。
你的其他选项... subsonic也许。
I have to build a website for a news channel..
Please help me decide which technology to use for data operations?
1) Linq to Entities 2) Linq to SQL 3) Fluent NHibernate 4) ADO.Net
Website will be based on ASP.Net MVC and C#.
Main Issues:
1) Should be easy to maintain and scale.
2) Good Performance
Please express your view with an example if possible..
Thanks
Chitresh
Pro and cons:
LINQ To Entities
Allows you to add another layer of abstraction (entity) instead of mapping directly to tables (like in LINQ to SQL). Support multiple data providers (not just SQL Server). Require a bit more learning time than LINQ to SQL. Provide unit of work concept. Medium to High learning curve.
LINQ to SQL
Allows you to easily map your tables, stored procs, etc. Provide unit of work concept. Only work on SQL Server backend. Easy to implement, but require dbml rebuild if db schema changes (1 way synchronization from db to object), so a bit harder to maintain. Low - Medium learning curve. Performance, ... I think Stack Overflow is using LINQ to SQL. How do you think it performs? Have unit of work concept.
Fluent NHibernate
Can't comment ... know nothing about it. If it is anything like NHibernate, should be quite flexible. Probably high learning curve. Someone correct me on this...
ADO.NET (Not talking about Named DataSet here...)
Should be the fastest (no abstraction). Flexible, bend it anyway you want. Low learning curve. Very basic, do everything yourself approach. Most of the time I go this route for simple project. Can lower productivity. You can augment it with code generation to gain some productivity.
Your other options... Subsonic perhaps.
这篇关于LINQ到实体vs流利nhibernate与LINQ到SQL(帮助)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!