实体框架代码第一 - 关系

时间:2018-04-03 17:09:21

标签: c# entity-framework

我正在寻找下一个关系的最佳方式。

我有2个实体,Val1 Val2 New_Val1 New_Val2 Type COPPAR Metal Copper Ert Metal A-I Bittar Gourd vegetble Bitter Gourd Vegetable B-II Blackbery Fruite Blackberry Fruit C-III User

PartnerUser

一个用户可以有多个合作伙伴(一个到多个),而合作伙伴只能有一个用户但同时合作伙伴是用户(这是我的问题)

在实体框架中,创建此关系的最佳方式是什么?

2 个答案:

答案 0 :(得分:1)

据我了解,您在这里没有两个实体,只有一个 - User。您可以将自我加入视为一对多非必需关系,因此User可以有Partner(多对一方)或Partners(一个)对多方):

public class User
{
    // I changed this to UserId to keep with naming conventions, 
    // it should otherwise be just Id, but not IdUser
    public int UserId { get; set; } 
    public int? PartnerId { get; set; }

    public User Partner { get; set; }
    public ICollection<User> Partners { get; set; }
}

答案 1 :(得分:-1)

你在考虑这样的事情......

public class User
{      
  public int IdUser { get; set; }

  public string UserName { get; set; }

  public bool Validate { get; set; } 

  public int? PartnerId { get; set; }

  public User Partner { get; set; }

  public ICollection<User> PartnerUsers{ get; set;}       
}