C# EF核心2映射关系 公共类手机{ 公共int Id{get;set;} 公共字符串名称{get;set;} 公共所有者{get;set;} } 公共类所有者{ 公共int Id{get;set;} 公共字符串名{get;set;} 公共字符串LastName{get;set;} 公共i集合城市{get;set;} } 公营城市 { 公共int Id{get;set;} 公共字符串名称{get;set;} 公共所有者{get;set;} } 公共类所有者配置:IEntityTypeConfiguration { 公共void配置(EntityTypeBuilder) { 建造商。可转让(“业主”); HasKey(x=>x.Id); builder.Property(x=>x.Id).HasColumnName(“Id”).ValueGeneratedAndd(); builder.Property(x=>x.FirstName); builder.Property(x=>x.LastName); builder.HasMany(x=>x.Cities); } }
我是否需要明确地设置PK,或者按照惯例设置PK 绘制城市和手机等级地图的正确方法是什么C# EF核心2映射关系 公共类手机{ 公共int Id{get;set;} 公共字符串名称{get;set;} 公共所有者{get;set;} } 公共类所有者{ 公共int Id{get;set;} 公共字符串名{get;set;} 公共字符串LastName{get;set;} 公共i集合城市{get;set;} } 公营城市 { 公共int Id{get;set;} 公共字符串名称{get;set;} 公共所有者{get;set;} } 公共类所有者配置:IEntityTypeConfiguration { 公共void配置(EntityTypeBuilder) { 建造商。可转让(“业主”); HasKey(x=>x.Id); builder.Property(x=>x.Id).HasColumnName(“Id”).ValueGeneratedAndd(); builder.Property(x=>x.FirstName); builder.Property(x=>x.LastName); builder.HasMany(x=>x.Cities); } },c#,.net,entity-framework,asp.net-core,C#,.net,Entity Framework,Asp.net Core,我是否需要明确地设置PK,或者按照惯例设置PK 绘制城市和手机等级地图的正确方法是什么 主键的实体框架约定为: 您的类定义了一个名为“ID”或“ID”的属性 或后面跟“ID”或“ID”的类名 要将属性显式设置为主键,可以使用HasKey方法。在以下示例中,HasKey方法用于在OfficeAssignment类型上配置InstructorID主键 public class MobilePhone{ public int Id {get; set;} public string N
主键的实体框架约定为: 您的类定义了一个名为“ID”或“ID”的属性 或后面跟“ID”或“ID”的类名 要将属性显式设置为主键,可以使用HasKey方法。在以下示例中,HasKey方法用于在OfficeAssignment类型上配置InstructorID主键
public class MobilePhone{
public int Id {get; set;}
public string Name { get; set; }
public Owner Owner { get; set; }
}
public class Owner{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public ICollection<City> Cities { get; set; }
}
public class City
{
public int Id {get; set;}
public string Name { get; set; }
public Owner Owner { get; set; }
}
public class OwnerConfiguration : IEntityTypeConfiguration<Owner>
{
public void Configure(EntityTypeBuilder<Owner> builder)
{
builder.ToTable("Owner");
builder.HasKey(x => x.Id);
builder.Property(x => x.Id).HasColumnName("Id").ValueGeneratedOnAdd();
builder.Property(x => x.FirstName);
builder.Property(x => x.LastName);
builder.HasMany(x => x.Cities);
}
}
modelBuilder.Entity().HasKey(t=>t.InstructorID);
PK将按惯例设置。城市和手机之间的关系取决于您。您认为映射它们的正确方式是什么意思?
modelBuilder.Entity<OfficeAssignment>().HasKey(t => t.InstructorID);