2017-03-04 32 views
0

目前我有这两种型号:如何链接两个模型ASP.NET CORE

Contact.cs

public class Contact 
{ 
    public int ConctactId { get; set; } 
    public string Name { get; set; } 
    public string Surname { get; set; } 
    public string City { get; set; } 
} 

PhoneNumber.cs

public class PhoneNumber 
{ 
    public int PhoneNumberId { get; set; } 
    public string Number { get; set; } 
    public string Description { get; set; } 

    public PhoneNumberTypeEnum EnumType { get; set; } 
} 

我的问题是,什么是一个正确的方法来改变这两个,所以我可以有多个PhoneNumber实例链接到一个联系人?此外,稍后我想在视图中显示所有联系人以及相应的电话号码。

回答

0

改变你的模型如下

public class Contact 
{ 
    public int ConctactId { get; set; } 
    public string Name { get; set; } 
    public string Surname { get; set; } 
    public string City { get; set; } 

    public virtual ICollection<PhoneNumber> PhoneNumbers { get; set; } 
} 

public class PhoneNumber 
{ 
    public int PhoneNumberId { get; set; } 
    public string Number { get; set; } 
    public string Description { get; set; } 

    public PhoneNumberTypeEnum EnumType { get; set; } 

    public int ContactId {get; set;} 

    public virtual Contact Contact{get; set;} 
} 
+0

你不需要在.NET核心 – Alexan

+0

使用虚拟非常感谢你,这是有益的。我只有一个问题。为什么我需要PhoneNumber模型中的Contact属性? – user3795041

+0

这个属性是可选的,但是作为面向对象的方面是需要的,当使用实体框架时这个字段需要加入和加载 –

相关问题