仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 893|回复: 7
打印 上一主题 下一主题

[学习教程] ASP.NET教程之Entity Framework 实体干系总结:one-to-one, one-to-many, many-to-many仓酷云 ...

[复制链接]
若相依 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:16:06 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
前几天同学问我学习方向的问题。有点想法,不知道对不对,怕误导同学,现在“开源一下”。注:括号内是我现在整理的时填加上的。经由过程EntiyFramework理论系列文章,理了理EntityFramework的实体干系。
为何要写文章来理清这些干系?“血”的教导啊,刚入手下手利用EntityFramework的时分,因为没有静下心来仔细理清干系,走了一些"痛不欲生"的弯路。而我们今朝开辟的项目都在利用EntityFramework,为了不其别人再履历"痛不欲生"的弯路。因而下定决计边“理清干系”边“写博客”。而写博客能够逼着本人把成绩完全地办理,制止前功尽弃。当写出这些文章,本人不知不觉对成绩有了更深的了解。
温故而知新,经由过程这篇总结将本人对EF实体干系的了解回锅热一热,大概会有新的劳绩;情感也一样,当情感冷上去的时分,别忘了回锅热一热。

1.一对一干系(one-to-one)
a)单向一对一(文章链接)
类图:

数据库表布局:

EntityFramework中实体干系的界说:
  1. modelBuilder.Entity<BlogSite>().HasRequired(b=>b.BlogUser).WithMany().HasForeignKey(b=>b.UserID);
复制代码
b)双向一对一(文章链接)
类图:

数据库表布局:

EntityFramework中实体干系的界说:

  1. 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中实体干系的界说:
  1. modelBuilder.Entity<BlogSite>().HasMany(b=>b.BlogPosts).WithRequired(p=>p.BlogSite);
复制代码

3.多对多干系(many-to-many,文章链接)

类图:

数据库表布局:

EntityFramework中实体干系的界说:

  1. modelBuilder.Entity<BlogPost>().HasMany(b=>b.Categories).WithMany(c=>c.BlogPosts).Map(m=>{m.MapLeftKey("BlogPostID");m.MapRightKey("CategoryID");m.ToTable("BlogPost_Category");});
复制代码


你觉得学习.NET怎么样,我懂的少,问的可能很幼稚,见笑了啊:)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-19 16:19

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表