带有自动生成类的.NET ORM解决方案:Subsonic,Castle AR,……?
我曾经使用自定义数据映射库,并且我正在尝试切换到更广泛的ORM解决方案.
经过一些实验,我将我的要求提炼到以下几点: >能够从数据库模式生成可用的类(SQL Server支持就足够了), 你能推荐一个吗? 到目前为止,我尝试过: 亚音速3.0 我最喜欢的那个,因为它感觉就像功能和简单之间的良好平衡. 我不喜欢的: >使用IQueryable<>和一对多关系两端的复数名称 – 这对我来说似乎是违反直觉的; Castle ActiveRecord 带有ActiveWriter加载项的CastleAR几乎就是我所需要的,但是ActiveWriter的代码并不完美(看来,Nullable<>属性不受支持,默认的一对多实现不起作用)而且我不能找到如何手动修复此代码. Darkside GeneratorStudio产生更好的代码 – 正确的定义,每个实体一个文件 – 尽管它使用神秘的名称,如RefclassIdRefclass.我个人喜欢Studio addin而不是独立的应用程序,但这肯定是一个小问题. CastleAR发行版中捆绑了大约20个文件;虽然本身不??是问题,但感觉就像超重.我不需要太多关于NHibernate和其他东西的深奥知识吗? 流利的NHibernate 广泛推荐,但我无法找到它的代码生成器. 我错过了重要的事吗? 解决方法
关于你不喜欢SubSonic的一些想法:
>使用IQueryable<>和一对多关系两端的复数名称 – 似乎 是的,我同意这是非常直观的,我从来没有深究为什么会这样,但你可以很容易地修改模板来解决这个问题. >为所有类生成一个文件 – 比如每个类一千行,我对代码文件那么大感觉不好; 您认为这可能会导致问题,但我还没有遇到任何问题,而且我还没有看到有关stackoverflow的报告. >自动调用T4处理,因此必须始终提供具有最新模式的数据库. 只有在编辑t4文件时才会自动调用它,所以当您对模板进行更改时,实际上只需要一个最新的模式. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |