Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从ASP.NET MVC到mySQL的最佳ORM选项_Mysql_Asp.net Mvc_Orm - Fatal编程技术网

从ASP.NET MVC到mySQL的最佳ORM选项

从ASP.NET MVC到mySQL的最佳ORM选项,mysql,asp.net-mvc,orm,Mysql,Asp.net Mvc,Orm,我一直在使用LINQtoSQL。使用mySQL的好选择是什么?我一直在研究NHibernate、实体框架等。一些比较(优点、缺点)会很有帮助 它不是Linq到SQL的完整端口,但它提供了基本功能 我还没有用过它,但是nHibernate now()中也有Linq支持。实体框架适用于MySQL中的大多数东西。您会注意到这里和那里的问题,但它们很可能都是可管理的问题。Nhibernate相当成熟,与实体框架相比似乎更轻。实体框架最大的缺点是缺少本机延迟加载。我曾经使用过NHibernate和实体框架

我一直在使用LINQtoSQL。使用mySQL的好选择是什么?我一直在研究NHibernate、实体框架等。一些比较(优点、缺点)会很有帮助

它不是Linq到SQL的完整端口,但它提供了基本功能


我还没有用过它,但是nHibernate now()中也有Linq支持。

实体框架适用于MySQL中的大多数东西。您会注意到这里和那里的问题,但它们很可能都是可管理的问题。

Nhibernate相当成熟,与实体框架相比似乎更轻。

实体框架最大的缺点是缺少本机延迟加载。我曾经使用过NHibernate和实体框架——我个人更喜欢NHibernate的丰富性,但实体框架相当快速且易于使用,并不像它有时得到的代表那样糟糕。

查看Telerik的。它对任何免费或开源数据库平台(在您的例子中是MySQL)都是免费的,并且提供了一个灵活且易于使用的GUI。更不用说Telerik拥有强大的支持论坛和庞大的数据库

OpenAccess提供LINQ支持、POCO、正向和反向映射、高级缓存、惰性和主动加载、无反射、中等信任等等。我每天都使用它(用于MS Sql和Oracle数据访问),并发现它是企业场景和我个人项目中的一个很好的解决方案。

。目前的2.6版本非常棒。设计器非常易于使用,支持实体继承、类型转换器(也可以用于跨RDBMS弥合不同类型之间的差距)、验证、审核、授权等等。但最重要的是,他们的文档非常出色,他们的支持论坛反应非常迅速。首席开发人员(同时也是stackoverflow)也会回答用户的问题。关于这个工具我说得太多了,试试吧。这是值得的

下一个版本可能会把游戏中其他的东西都吹走。除了以后能够生成他们的传统数据之外,您还能够生成nHibernate映射文件、实体框架和linq2sql

这里有一个将LLBLGen与实体框架和nHibernate进行比较的讨论(当然,这可能是有偏见的,因为它在他们的论坛上)。

看看Mindscape LightSpeed。它包括LINQ查询和一个本机使用MySQL的VisualStudio设计器。您也可以直接从LightSpeed designer中更新数据库或同步数据库中的更改

Mindscape还为asp.net MVC发布了一个开放源码的助手库,其中包括他们为简化LightSpeed和MVC开发而建立的东西(例如,您可能最终需要为您使用的任何底层模型对象定制ModelBinder—Mindscape提供了一个比默认ModelBinder更丰富的工具)

有一个免费版本可供使用:

Mindscape的一位同事也写了一组相当深入的博客文章,介绍如何使用LightSpeed构建ASP.NET MVC解决方案(尽管无论您使用什么,它可能都很有用:-)


根据我的经验,为DbLinq生成对象类有点困难。根据我的经验,DbMetal是一个相当轻松的经历。对生成的代码进行一点修改,它的工作原理就像Linq到SQL一样;一旦你把它安装好,它是无痛的。我也不需要修改生成的代码。是的,不过请查看项目EFLazyLoading,它支持实体框架的延迟加载。我知道这个项目(因此使用了单词native!)-事实上,我正在生产系统上使用它,它运行得很好。不过,它也有一些怪癖。