本文主要是介绍EF之Code First设置主外键关系(三),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、前言
前两篇博文说的主外键关系都是一对一的外键关系,下面我们来说另外一种情况,一个主类中包含多个外键关键,基本代码如下。
public class B{[Key]public int Id { get; set; }public string Name { get; set; }}public class A{[Key]public int Id { get; set; }public string Name { get; set; }public B B1 { get; set; } /*第一次*/ public B B2 { get; set; } /*第二次*/}
上述代码如下,对象B出现异常,没有问题,正常,如果实现多次怎么处理呢?
2、解决方法
利用ForeiginKey与Column都不可以,正确的方法是依赖EF框架自动生成外键, 我们只需要指定导航属性即可,EF自动创建命名规则为:“表名_主键名”的复键,代码如下:
public class A{[Key]public int Id { get; set; }public string Name { get; set; }public virtual B B1 { get; set; }public virtual B B2 { get; set; }}public class B{[Key]public int Id { get; set; }public string Name { get; set; }}
这篇关于EF之Code First设置主外键关系(三)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!