这是模特中的礼物类。那应该是父类。
public class Gift
{
public int GiftId { get; set; }
public string Title { get; set; }
public string Brand { get; set; }
public double Price { get; set; }
public bool Chosen { get; set; }
public virtual Shop Shop { get; set; }
public virtual Person Person { get; set; }
}
这是Shop类,这两者有一对一的关系。礼物应该有商店,商店应该有礼物。
public class Shop
{
public int ShopId { get; set; }
public string Name { get; set; }
public string Street { get; set; }
public string Number { get; set; }
public string Postcode { get; set; }
public string District { get; set; }
public virtual Gift Gift { get; set; }
}
这是我模特中的第三堂课。这个类与礼物类有一对一的关系。如果没有选择礼物,则没有任何人。这个人也一样。
public class Person
{
public int Id { get; set; }
public string FirstName{ get; set; }
public string Surname{ get; set; }
public string EmailAdress { get; set; }
public virtual Gift Gift { get; set; }
}
这是一个流畅的api,我有很多次改变。
modelBuilder.Entity<Gift>()
.HasOptional(x => x.Person);
modelBuilder.Entity<Person>()
.HasRequired(x => x.Gift);
modelBuilder.Entity<Gift>()
.HasRequired(x => x.Shop).WithOptional(x => x.Gift).Map(x => x.MapKey("ShopId"));
modelBuilder.Entity<Shop>()
.HasRequired(x => x.Gift).WithOptional(x => x.Shop).Map(x => x.MapKey("GiftId"));
我可以保存数据,但是当我想要删除礼物时,我无法成功并遇到问题。我该如何解决这个问题? Thanx已经!
答案 0 :(得分:0)
我修好了。 Here is the link
modelBuilder.Entity<Shop>()
.HasRequired(x => x.Gift)
.WithRequiredDependent();
modelBuilder.Entity<Gift>()
.HasRequired(x => x.Shop)
.WithRequiredPrincipal();
base.OnModelCreating(modelBuilder);