我有2个实体。 订单和地址(作为DDD中的值对象)。 我希望Guid.NewGuid()生成订单的Id属性。我已配置为以下
class OrderEntityTypeConfiguration : IEntityTypeConfiguration<Order>
{
public void Configure(EntityTypeBuilder<Order> orderConfiguration)
{
orderConfiguration.ToTable("orders", OrderingContext.DEFAULT_SCHEMA);
orderConfiguration.HasKey(o => o.Id);
orderConfiguration.Ignore(b => b.DomainEvents);
orderConfiguration.Property(b => b.Id).HasDefaultValueSql<Guid>("(newid())");
//Address value object persisted as owned entity type supported since EF Core 2.0
orderConfiguration.OwnsOne(o => o.Address);
}
}
但是,当使用命令“ dotnet ef迁移添加InitialDatabase ”来创建迁移时,会抛出错误“ 'Order.Id'和'Order.Address#Address.OrderId '都被映射到'ordering.orders'中的列'Id',但被配置为使用不同的默认值('(newid())'和'')。 “
请帮帮我。我是.net Core2,EF核心的新手。谢谢。