Добрый день, есть 2 модели:
public class Service : EntityBase
{
public Guid Id { get; set; }
public override string H1 { get; set; }
public virtual Category Category { get; set; }
}
[Owned]
public class Category : EntityBase
{
public Guid Id { get; set; }
}
Хочу сделать чтобы при добавлении таблицы так же создавалась связь между этим моделями т.е. заполнялось поле public virtual Category Category { get; set; }
В AppDbContext добавил:
public DbSet<Entities.Service> Services { get; set; }
public DbSet<Entities.Category> Categories { get; set; }
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity<Entities.Service>(b =>
{
b.HasData(new Entities.Service
{
Id = new Guid("666599D8-EAC4-4F43-9F15-B7063C583B76"),
Url = "usluga-1",
H1 = "Услуга 1"
});
b.OwnsOne(x => x.Category).HasData(new Category
{
Id = new Guid("309035C6-9489-41CA-A395-717243880814"),
Url = "default",
H1 = "По умолчанию",
});
});
}
но при создании миграции выдаётся ошибка
The seed entity for entity type 'Category' cannot be added because there was no value provided for the required property 'ServiceId'.
Не понимаю при чём тут ServiceId если полю задаётся объект, в общем как прописать связь?