关闭。这个问题不满足StackOverflowguidelines.它目前不接受答案。想改善这个问题吗?更新问题,使其成为on-topic对于堆栈溢出。8年前关闭。Improvethisquestion我需要为N层应用程序仔细选择.NETORM。这意味着,我将拥有公开数据的服务器(WCF服务)和显示数据的客户端。ORM应该顺利支持所有相关的序列化问题——对象或对象集合,或者任何必须跨越进程边界的东西。理想情况下,在多进程环境中的用法应该与在单进程中相同。标准是:db模式映射到对象的灵活性(首选)易用性免费、开源(首选)必须适合N层(多进程多域应用)业绩与VisualStudio集成的工
你用过OpenAccessORMfromTelerik吗??它与NHibernate相比如何?我什么时候应该考虑在NHibernate上使用它? 最佳答案 我自己也在想同样的事情。一方面,NH拥有免费的开源软件,但支持选项有限。另一方面,知名工具提供商OA的新成员。OA需要花钱,但您会得到支持。NH是免费的,但至少在我的短暂经历中,支持是有限且缓慢的。我认为两者都可能是优质产品。我已经决定尝试OA,因为我已经是Telerik工具的用户。无论如何,OA及其支持都是有偿的。NH使用普通类和对象,类属性上没有任何装饰。OA需要装饰(由OA
我有两个类“产品”和“卖家”。publicclassProduct{publicintId{get;set;}publicstringName{get;set;}publicdecimalPrice{get;set;}publicSellerSeller{get;set;}publicint?SellerId{get;set;}}publicclassSeller{publicintId{get;set;}publicstringName{get;set;}publicListProducts{get;set;}}我想使用dapper提取包含所有产品的卖家列表。目前我是这样做的:Dic
我开始使用PetaPOCO和Dapper,它们都有自己的局限性。但恰恰相反,它们比EntityFramework快如闪电,我倾向于放弃它的局限性。我的问题是:是否有任何ORM可以让我们具体定义一对多、多对一和多对多关系?Dapper.Net和PetaPOCO都采用了黑客式的方式来伪造这些关系,而且当您可能有5-6个连接时,它们甚至不能很好地扩展。如果没有一个微型ORM可以让我们处理它,那么我的第二个问题是我是否应该放弃这些微型ORM不擅长定义关系并为每种类型创建一个新的POCO实体的事实我要执行的包含这些类型的多重连接的查询?这能很好地扩展吗?我希望我的问题很清楚。如果没有,请告诉我。
请注意,我的问题结果类似于SO问题1668172.这是一个设计问题,以前肯定有人向其他人提出过,但我找不到适合我情况的答案。我想在我的应用程序中记录出生日期,其中包含几个“级别”的信息:NULL值,即DoB未知1950-??-??只有DoB年份值已知,日期/月份未知????-11-23只是月、日或两者的组合,但没有年1950-11-23完整的DoB已知我在我的应用中使用的技术如下:Asp.NET4(C#),可能带有MVC一些ORM解决方案,可能是Linq-to-sql或NHibernate的MSSQLServer2008,最初只是Express版到目前为止,我想到的SQL位的可能性:1
假设一个客户有很多电话号码,而一个电话号码只有一个客户。publicclassPhoneNumber:IValueObject{publicstringNumber{get;set;}publicstringType{get;set;}}publicclassCustomer:IEntity{publicICollectionphones{get;privateset;}//ewatnoencapsulatedcollectionsupportpublicvoidSetPhones(paramsPhoneNumber[]phones){this.phones.Clear();this.
我不知道这是EntityFramework的设计选择还是代表我的错误方法,但每当我尝试将AddRange实体添加到DbSet时,我似乎无法获得自动生成的IDENTITY字段。[Table("entities")]publicclassEntity{[Key][Column("id")]publiclongId{get;set;}[Column("field")]publicstringField{get;set;}}varentities=newEntity[]{newEntity(){Field="A"},newEntity(){Field="B"},};_dbContext.Ent
这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:WhatisNHibernate?我听说过这个名字NHibernate用了很多,但我真的不明白它是什么。我有readtheWikipediaarticle,但我不明白如何在我的C#应用程序(带WPF的桌面、带ASP.NETMVC的Web)中使用NHibernate:修改代码更容易/更快我应该考虑在我的项目中使用NHibernate吗?更新:感谢您将此识别为骗局!我没有意识到这个已经被问过了。我想我真正的问题是关于NHibernate与LinqtoSQL(我在我所有的应用程序中都在使用它),但已经有人问过了he
我刚开始使用Dapper,我似乎没有找到像将实体映射到数据库中的表这样非常简单的事情:我有一个存储过程:CREATEPROCEDURE[dbo].GetUserById(@UserIdint)ASbeginSELECTUserId,LastName,FirstName,EmailAddressFROMusersWHEREUserID=@UserIdendgo然后是一个实体:publicclassUser{publicintId{get;set;}publicstringLastName{get;set;}publicstringFirstName{get;set;}publicstri
我最终决定使用EntityFramework,因为它在所有ORM中具有最佳性能。但在我开始阅读和编写代码之前,我只想知道是否有使用ORM的高流量网站。 最佳答案 目前发布的EF版本,.NET3.5中的v1.0,性能很差。一年多前,当它首次发布时,我进行了广泛的测试,并就该主题与Microsoft进行了多次长时间的电子邮件讨论。EF当前的效率有很多不足之处,并且在许多情况下,会生成极其糟糕的SQL查询,从而降低您的性能。.NET4.0中的EntityFrameworkv4.0好多了。他们已经修复了大部分(如果不是全部)困扰EFv1.0