DAL层的三个Model类:

字典表:CFDict

用户表:CFUser

用户爱好表:CFUserHobby(关联cfuser表和cfdict表)

CFUser表和CFUserHobby表是一对多关系,一个用户有多个爱好,CFDict表和CFUserHobby表是一对多关系,某一个爱好可能很多人都有

public class CFDict
{
//标识列
public int Id { get; set; }

//名称
public string Name { get; set; }

//父ID
public int ParentId { get; set; }

//所在层,从0开始
public int Level { get; set; }

//所属分类
public string Category { get; set; }

//排序号
public int? OrderNum { get; set; }

public virtual ICollection<CFUserHobby> CFUserHobbys { get; set; }
}

public class CFUser
{
public int Id { get; set; }

//用户名
[StringLength(50)]
public string UserName { get; set; }

//密码
[StringLength(50)]
public string UserPwd { get; set; }

//邮箱
[StringLength(50)]
public string UserMail { get; set; }

//全名
[StringLength(50)]
public string FullName { get; set; }

//性别
public int? Sex { get; set; }

//出生日期
public DateTime? BirthDay { get; set; }

//城市code
public int? CityCode { get; set; }

//爱好code
public int? HobbyCode { get; set; }

//博客网站
public int? BlogCode { get; set; }

//博客名称
public string BlogName { get; set; }

//注册日期
public DateTime SignDate { get; set; }

public virtual ICollection<CFUserHobby> CFUserHobbys { get; set; }
}

public class CFUserHobby
{
//标识列
public int Id { get; set; }

//用户ID
public int CFUserId { get; set; }

//爱好ID
public int CFDictId { get; set; }

public virtual CFUser CFUser { get; set; }

public virtual CFDict CFDict { get; set; }
}

public class CFContext : DbContext
{
public CFContext()
: base("CFContext")
{
}

public DbSet<CFUser> CFUsers { get; set; }

public DbSet<CFDict> CFDicts { get; set; }

public DbSet<CFUserHobby> CFUserHobbys { get; set; }

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

base.OnModelCreating(modelBuilder);
}
}

可以看到生成的外键:

源代码下载QQ群:389496325

最新文章

  1. JavaScript:异步 setTimeout
  2. 建站随手记:about server stack
  3. robotframework笔记22
  4. eclipse 必备
  5. js手机站跳转
  6. 【转】如何开发苹果iOS操作平台下的应用程序?
  7. 《TCP/IP作品详细解释2:达到》注意事项--IP地址
  8. CenoOS 7环境下编译OpenJDK8
  9. Centos 7 安装 ELK 5.6.8 及基础的配置
  10. 洛谷P2982 [USACO10FEB]慢下来Slowing down
  11. HTTP协议(二)之确保web安全的HTTPS
  12. GBK与UTF-8的区别
  13. 第三个spring冲刺第9天
  14. python 3以上版本使用pickle.load读取文件报UnicodeDecodeError: &#39;ascii&#39; codec can&#39;t decode byte 0x8b in position 6
  15. 线性代数与Python
  16. Hibernate第一个程序(最基础的增删改查) --Hibernate
  17. ThinkPHP3 和 ThinkPHP5 不是一个团队做的
  18. SQL truncate 、delete与drop区别[z]
  19. Emscripten教程之连接C++和JavaScript(三)
  20. Cocos2d-x 源代码分析 : Scheduler(定时器) 源代码分析

热门文章

  1. 前端自动化构建工具gulp记录
  2. STM32F429 LCD程序移植
  3. “RazorEngine.Templating.TemplateParsingException”类型的异常在 RazorEngine.NET4.0.dll 中发生,但未在用户代码中进行处理 其他信息: Expected model identifier.
  4. JAVA 分页工具类及其使用
  5. IteratorPattern(迭代子模式)
  6. JavaScript 正则表达式语法
  7. Android之数据存储的五种方法
  8. mysql开启慢查询日志及查询--windows
  9. SQL中字符串拼接
  10. CentOs7 +Jexus 5.8.2部署Asp.Net Core WebApi 1.0生产环境