一对多:

public class Category
{public Category(){Id = GuidComb.GenerateComb();}public Guid Id { get; set; }public string Name { get; set; }public string Description { get; set; }public virtual IList<Topic> Topics { get; set; }
}public class Topic
{public Topic(){Id = GuidComb.GenerateComb();}public Guid Id { get; set; }public string Name { get; set; }public DateTime CreateDate { get; set; }public virtual Category Category { get; set; }
}public class CategoryMapping : EntityTypeConfiguration<Category>
{public CategoryMapping(){HasKey(x => x.Id);HasMany(x => x.Topics).WithRequired(x => x.Category);}
}public class TopicMapping : EntityTypeConfiguration<Topic>
{public TopicMapping(){HasKey(x => x.Id);HasRequired(t => t.Category).WithMany(t => t.Topics).Map(m => m.MapKey("Category_Id")); // 注意:如果实体中保存外键属性,那么这样写:this.HasRequired(t => t.Category).WithMany(t => t.Topics).HasForeignKey(m => m.Category_Id);
            }
}

多对多:

public class TopicTag
{public TopicTag(){Id = GuidComb.GenerateComb();}public Guid Id { get; set; }public string Tag { get; set; }public virtual IList<Topic> Topics { get; set; }
}public class Topic
{public Topic(){Id = GuidComb.GenerateComb();}public Guid Id { get; set; }public string Name { get; set; }public DateTime CreateDate { get; set; }public virtual IList<TopicTag> Tags { get; set; }
}public class TopicTagMapping : EntityTypeConfiguration<TopicTag>
{public TopicTagMapping(){HasKey(x => x.Id);}
}public class TopicMapping : EntityTypeConfiguration<Topic>
{public TopicMapping(){HasKey(x => x.Id);HasMany(t => t.Tags).WithMany(t => t.Topics).Map(m =>{m.ToTable("Topic_Tag");m.MapLeftKey("TopicTag_Id");m.MapRightKey("Topic_Id");});}
}

谢谢浏览!

转载于:https://www.cnblogs.com/Music/archive/2013/04/08/my-simple-entity-framework-code-first-demo.html

EF Code First 简单的示例相关推荐

  1. 【EF Code First】 一对一、一对多的多重关系配置

    这里使用相册Album和图片Picture的关系做示例 1,Album与Picture最基本的关系是1-n(一个相册可以有多张图片) 这时Album.Picture实体类可以这么定义 /// < ...

  2. Python 程序示例 - 初学者的简单代码示例

    马克吐温说过,出人头地的秘诀就是开始.编程对于初学者来说似乎令人望而生畏,但最好的入门方式是直接投入并开始编写代码. 简单的代码示例是初学者入门和学习编程基础知识的好方法.在本文中,我将提供一系列非常 ...

  3. WCF入门(一)——简单的示例

    这篇随笔写了一段时间了,当时没有发布,今天整理文档的时候发现了,顺便给配了些图.主要是绍了一下WCF编程模型,并给了一个简单的示例. 概述 WCF框架是下一代.NET平台通信应用程序的核心.它包含了W ...

  4. 机器学习简单代码示例

    机器学习简单代码示例 //在gcc-4.7.2下编译通过. //命令行:g++ -Wall -ansi -O2 test.cpp -o test #include <iostream> u ...

  5. BizTalk 2006 简单入门示例程序(附源项目文件下载)

    BizTalk 2006 简单入门示例程序(附源项目文件下载) 为初学BizTalk Server 2006的开发人员,提供一个简单入门的示例程序,包括一个Receive Port.Send Port ...

  6. python导入txt文件并绘图-Python实现读取txt文件并画三维图简单代码示例

    记忆力差的孩子得勤做笔记! 刚接触python,最近又需要画一个三维图,然后就找了一大堆资料,看的人头昏脑胀的,今天终于解决了!好了,废话不多说,直接上代码! #由三个一维坐标画三维散点 #codin ...

  7. python读取txt文件代码-Python实现读取txt文件并画三维图简单代码示例

    记忆力差的孩子得勤做笔记! 刚接触python,最近又需要画一个三维图,然后就找了一大堆资料,看的人头昏脑胀的,今天终于解决了!好了,废话不多说,直接上代码! #由三个一维坐标画三维散点 #codin ...

  8. 【组合数学】鸽巢原理 ( 鸽巢原理简单形式示例 4、5 )

    文章目录 一.鸽巢原理简单形式示例 4 二.鸽巢原理简单形式示例 5 一.鸽巢原理简单形式示例 4 假设有 333 个 777 位二进制数 , A:a1a2a3a4a5a6a7A : a_1a_2a_ ...

  9. 【组合数学】鸽巢原理 ( 鸽巢原理简单形式 | 鸽巢原理简单形式示例 1、2、3 )

    文章目录 一.鸽巢原理简单形式 二.鸽巢原理简单形式示例 1 三.鸽巢原理简单形式示例 2 四.鸽巢原理简单形式示例 3 一.鸽巢原理简单形式 鸽巢原理 : 将 n+1n + 1n+1 个物体 放到 ...

最新文章

  1. Github下载量10万次,最终被所有大厂封杀!
  2. 流数据分析平台Storm简介
  3. java if and_关于java:if语句中可以有两个条件吗
  4. 数据库70多张表设计的一些思考…
  5. XAML概要--事件和后台代码
  6. OpenGL 泛光Bloom
  7. UML类图关系表示方法
  8. 史上最贵!iPhone 12S系列9月亮相,全系标配激光雷达
  9. 浙江午饭9月17~18日杭州聚会详细计划
  10. java游戏开发总结_java--游戏后端--项目开发总结6--资源下载
  11. 【转】Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
  12. 解决EPSON R230打印机驱动程序安装错误
  13. PHP,$this-{$xxx} 是什么意思?
  14. java编译报错提示编码gbk的不可映射字符啥意思_解决java编译错误:编码GBK的不可映射字符...
  15. 美元指数高位盘整 黄金踩下回落“急刹车”
  16. java设置打印机默认纸张_java 打印设置打印A4 A5纸
  17. 金蝶BOS是什么,能给您带来什么价值?
  18. Android把图片压缩到一定大小并不失真
  19. 十六进制字符串转十进制数字
  20. 江苏大学计算机考研上岸分享

热门文章

  1. 查询DB中每个表占用的空间大小
  2. Linux多线程实践(1) --线程理论
  3. SPC控制图的样品子组大小为什么建议4或者5
  4. 谈谈实习期间应该注意的几点问题,助你早日拿到转正offer
  5. mysql把一个字段加到另一张表中_mysql如何能把一个表中的某一字段下的数据加入另一个表中相同字段下,条件是两表中的某字段相同?...
  6. webpack配置说明
  7. CSS实现垂直居中的方法
  8. js操作json方法总结
  9. react-性能优化
  10. KindEditor编辑器, 利用ajax动态切换编辑器内容