zoukankan      html  css  js  c++  java
  • 5.对与表与表之间的关系,efcore是如何处理的

    public class Account
        {
            [Key]
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int AccountID { get; set; }
            public string LoginName { get; set; }
            public string Password { get; set; }
            public string SecurityStamp { get; set; }
            /// <summary>
            /// 默认: 1 可以登录   0 已删除(不能登陆)
            /// </summary>
            public int Status { get; set; }
            public virtual AccountInfo AccountInfo { get; set; }
    
            [ForeignKey("Role")]
            public int RoleID { get; set; }
            public virtual Role Role { get; set; }
            public virtual ICollection<AccountModule> AccountModules { get; set; }
    
        }
     public class AccountInfo
        {
            [Key]
            [ForeignKey("Account")]
            public int AccountID { get; set; }
            public virtual Account Account { get; set; }
            [Required]
            [StringLength(100)]
            public string Email { get; set; }
            [StringLength(100)]
            public string Mobile { get; set; }
            [StringLength(100)]
            public string Telephone { get; set; }
            [Required]
            [StringLength(100)]
            public string Name { get; set; }
            [StringLength(100)]
            public string QQNumber { get; set; }
        }
     public class AccountModule
        {
            [Key]
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int AccountModuleID { get; set; }
    
            [ForeignKey("Account")]
            public int AccountID { get; set; }
            public virtual Account Account { get; set; }
    
            [ForeignKey("Module")]
            public int ModuleID { get; set; }
            public virtual Module Module { get; set; }
        }
     public class Role
        {
            [Key]
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int RoleID { get; set; }
            public string RoleName { get; set; }
        }

    看了上面几个Model相信大家已经知道了吧。

    1对1,就是Account 对于 AccountInfo

    多对一 就是Account对于Role

    多对多 就是Account对于Module

    相信大家应该已经理解了

  • 相关阅读:
    模板实现一个通用栈
    服务器开发
    objectc获取文件各项属性方法
    Visual C++ MFC 中常用宏的含义
    symbian获取中文的拼音
    sip协议的功能及其应用
    【转】MySQL分区的简单实例,用于解决大数据表的问题
    Symbian c++ 在3版中实现并动态配置开机自启动
    (转)如果你也喜欢用goto
    C++实现查找汉字拼音首字母
  • 原文地址:https://www.cnblogs.com/quan01994/p/6002968.html
Copyright © 2011-2022 走看看