2008-11-25 96 views
2

我正在使用C#3.0/.NET 3.5并计划建立一个电子商务网站。什么是电子商务网站的ORM的好选择?

我见过NHibernate的,LLBLGEN,基因组,LINQ到SQL,实体框架,亚音速,等

我不想全部手工编写代码。如果有一些特定的瓶颈,我会设法优化数据库/代码。

哪个ORM最好?那一天有太多可用的东西,我甚至不知道从哪里开始。

我应该使用哪些功能?

欢迎链接,Screencast和文档。

+0

检查http://www.mindscape.co.nz出来,他们有一个叫做Lightspeed的ORM,非常灵活,也有LINQ集成 – 2008-11-25 20:13:35

回答

3

我一直在使用nHibernate这是一个很好的免费解决方案。缺点是缺少文档,导致升温时间稍微增加。但是一旦你掌握了基本知识,它确实会加速开发。

我喜欢Fluent nHibernate的一种不带xml文件的配置方式。我建议的一件事是从应用程序中抽象出您的数据访问。这种方式如果你选择错误,你不必担心重新编码App层。

+0

我还没有用过nHibernate,但是nHibernate是DEAD,因为我在Google上的研发可以用 你可以点亮目前的情景天气来使用nHibernate或EF6进行小型电子商务启动吗? – 2016-03-17 08:48:44

1

我真的只能说对LINQ-SQL,可以说,它是:

  • 使用方便
  • 快速让你和运行
  • 适合简单模式和对象模型

,但它开始往下掉,如果:

  • 您正在使用断开连接(分层)体系结构,因为其datacontext需要相同的对象实例来执行跟踪和并发(尽管有解决方法)。
  • 你有一个复杂的对象模型/数据库
  • 加上它有一些其他的niggles和奇怪的行为

我期待尝试EF接下来我和MS似乎悄然下降有利于LINQ-SQL的EF,这不完全是LINQ-SQL的振铃建议:)

1

这取决于数据模型的体系结构。我可以谈到SubSonic的有效性,因为我正在启动它支持的Web应用程序。

我在使用SubSonic时遇到JOIN和DISTINCT的问题。这两次,我所要做的就是修补源代码并重建DLL。现在,我完全不喜欢这样的事情,但你可能会这样。

除了这两个问题之外,SubSonic还是一个使用的乐趣。选择非常容易和流畅。它与SQL非常接近,与LINQ的方式非常相似。此外,SubSonic还带有脚手架功能,可以为您预先构建特定页面。我不确定它有多有效,因为我喜欢自己做这些东西。

还有一件事,与*相比,特定行的选择很慢,但仅限于调试模式。一旦你编译发布,它实际上更快。

这是我的两美分。

0

我开始使用Linq to SQL作为整个linq集成是非常棒的,但是如果你想要Model First而不是Schema First,并且你希望有一个丰富的领域模型,那么nHibernate \ Fluent nHibernate是真正的方法走。我们切换到这一点,并且比l2s更简单得多,支持得更好。但是,直接将模式拖到dbml代码生成器中,linq to sql非常好。 我也听说了关于Mindscape Lightspeed的非常好的事情,但没有使用它。