C# EF 6 fluent api是必需属性
我有两个班:地址和城市。我希望address类中需要city属性,但当我将C# EF 6 fluent api是必需属性,c#,entity-framework,validation,C#,Entity Framework,Validation,我有两个班:地址和城市。我希望address类中需要city属性,但当我将属性(p=>p.city).IsRequired()添加到fluent api时,我得到一个错误,即city必须是不可为null的值类型,但当我用[required]注释装饰city属性时,一切都正常 那么,如何使用fluent api实现这一点,以及为什么属性(p=>p.Street).IsRequired()适用于字符串-字符串不是不可为空的值类型 public class Address {
属性(p=>p.city).IsRequired()
添加到fluent api时,我得到一个错误,即city必须是不可为null的值类型,但当我用[required]注释装饰city属性时,一切都正常那么,如何使用fluent api实现这一点,以及为什么
属性(p=>p.Street).IsRequired()
适用于字符串-字符串不是不可为空的值类型
public class Address
{
public int AddressId { get; private set; }
public string Street { get; internal set; }
[Required]
public City City { get; internal set; }
}
public class CIty
{
public int CityId {get; private set; }
public string Name {get; internal set;}
}
为了指定关系的基数,需要改用
HasRequired
方法--Property
方法仅用于标量属性
modelBuilder.Entity<Address>().HasRequired(a => a.City);
modelBuilder.Entity().HasRequired(a=>a.City);
为了指定关系的基数,您需要使用HasRequired
方法——Property
方法仅用于标量属性
modelBuilder.Entity<Address>().HasRequired(a => a.City);
modelBuilder.Entity().HasRequired(a=>a.City);