2012-02-05 45 views
1

我理解微型ORM系统的基本原理,例如海量和精巧型,但是我很难理解如何用关系建模表。从NHibernate切换到Massive或Dapper

即:

类别1 --- M产品

在我的NHibernate的,或LINQ2SQL解决方案,类别有一个列表属性。似乎没有任何关于如何建立这种关系的例子。特别是在linq中,我们可以选择具有特定名称的产品类别。

+0

在dapper的情况下,项目主页给出了多映射(基本上,使用宽单结果休息)和多个结果集的例子。你尝试过这些吗? http://code.google.com/p/dapper-dot-net/ – 2012-02-05 19:16:13

+0

另外,请务必阅读http://stackoverflow.com/tags/dapper/info ...如果您发现有任何信息缺失,编辑标题和我将填补空白 – 2012-02-05 22:25:07

回答

1

如果您正在考虑从任何传统ORM转换。我坚持认为你必须观看Rob Conery发布的video

而且您对有关域对象具有另一个域对象集合作为其属性的问题表示担心。这不会是一个问题。只是一件事就是你这次把你的自我反对的那个域名的价值。

喜欢这里

Class Person 
{ 
    public String FirstName{get;set;} 
    public String LastName {get;set;} 
    public IEnumarable<Address> {get;set;} 
} 

Class Address 
{ 
    public String Address1 {get;set;} 
    public String Address2 {get;set;} 
} 

Dynamic personData = new DynamicModel("connectionString","TableName","PrimaryKey"); 

var resultPerson = personData.All(where: "where condition") 
or 
var resultPerson = personData.Query("Join query will be here") 

//Map resultPerson with PersonObject and return Person 
//Still this will be faster than EF as per benchmark shown on Dapper page 

我希望这会给你的答案。如果你需要工作代码,请让我知道。

+0

在那个视频中,夸利包含了如此多的关于他如何成为一名开发人员和...更好,如果他只是去点 – antew 2013-03-11 17:06:07

+0

@antew我个人喜欢历史的一部分。如果你喜欢我可以分享链接的地方,那么还有很多关于MicroORM的话题... – kunjee 2013-03-12 11:09:19

+0

视频链接已经死了。 :( – 2016-02-16 01:07:26