|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
前几天同学问我学习方向的问题。有点想法,不知道对不对,怕误导同学,现在“开源一下”。注:括号内是我现在整理的时填加上的。经由过程EntiyFramework理论系列文章,理了理EntityFramework的实体干系。
为何要写文章来理清这些干系?“血”的教导啊,刚入手下手利用EntityFramework的时分,因为没有静下心来仔细理清干系,走了一些"痛不欲生"的弯路。而我们今朝开辟的项目都在利用EntityFramework,为了不其别人再履历"痛不欲生"的弯路。因而下定决计边“理清干系”边“写博客”。而写博客能够逼着本人把成绩完全地办理,制止前功尽弃。当写出这些文章,本人不知不觉对成绩有了更深的了解。
温故而知新,经由过程这篇总结将本人对EF实体干系的了解回锅热一热,大概会有新的劳绩;情感也一样,当情感冷上去的时分,别忘了回锅热一热。
1.一对一干系(one-to-one)
a)单向一对一(文章链接)
类图:
数据库表布局:
EntityFramework中实体干系的界说:
- modelBuilder.Entity<BlogSite>().HasRequired(b=>b.BlogUser).WithMany().HasForeignKey(b=>b.UserID);
复制代码 b)双向一对一(文章链接)
类图:
数据库表布局:
EntityFramework中实体干系的界说:
- modelBuilder.Entity<BlogSite>().HasRequired(b=>b.BlogUser).WithMany().HasForeignKey(b=>b.UserID);modelBuilder.Entity<BlogUser>().HasRequired(u=>u.BlogSite).WithMany().HasForeignKey(u=>u.BlogID);
复制代码
2.一对多干系(one-to-many,文章链接)
类图:
数据库表布局:
EntityFramework中实体干系的界说:
- modelBuilder.Entity<BlogSite>().HasMany(b=>b.BlogPosts).WithRequired(p=>p.BlogSite);
复制代码
3.多对多干系(many-to-many,文章链接)
类图:
数据库表布局:
EntityFramework中实体干系的界说:
- modelBuilder.Entity<BlogPost>().HasMany(b=>b.Categories).WithMany(c=>c.BlogPosts).Map(m=>{m.MapLeftKey("BlogPostID");m.MapRightKey("CategoryID");m.ToTable("BlogPost_Category");});
复制代码
你觉得学习.NET怎么样,我懂的少,问的可能很幼稚,见笑了啊:) |
|