欢迎光临
个人技术文档整理

EF Core 数据批注 - [ForeignKey ] 外键属性

外键属性:[ForeignKey]

两个实体之间的关系中配置外键。

  • 它覆盖默认约定。
  • 根据默认约定,当属性的名称与相关实体的主键属性匹配时,EF 会将该属性设置为外键属性。

外键签名: [ForeignKey(name string)]

  • Name:关联的导航属性的名称或关联的外键的名称 

 

使用方法

  • EF Core 默认约定的导航属性  如常用的:导航属性、外键属性(导航属性名+Id) 
        [Table("Blog")]
        public class Blog
        {
            [Key]
            public long Id { get; set; }
            /// <summary>
            /// 外键属性=导航属性名+Id
            /// </summary>
            public long? UserInfoId { get; set; }
             /// <summary>
            /// 导航属性
            /// </summary> 
            public UserInfo? UserInfo { get; set; }
        }
  • [外键] 在依赖实体中的外键属性
            /// <summary>
            /// 外键属性
            /// </summary>
            [ForeignKey("UserInfo")]
            public long? UserInfo_Id { get; set; } 
            /// <summary>
            /// 导航属性
            /// </summary> 
           
            public UserInfo? UserInfo { get; set; }

     

  • 依赖实体中导航属性上的 [外键]
            /// <summary>
            /// 外键属性
            /// </summary>
            public long? UserInfo_Id { get; set; } 
            /// <summary>
            /// 导航属性
            /// </summary> 
            [ForeignKey("UserInfo_Id")] 
            public UserInfo? UserInfo { get; set; }

 

 

赞(1)