В качестве обновления, основанного на одном из ваших комментариев выше, вы теперь используете синтаксис OwnsOne
для этого, используя Fluent API в своей функции OnModelCreating
DbContext.
[ComplexType]
public class Money
{
public double? Amount { get; set; }
}
public class Rate
{
[Key]
public long Id { get; set; }
public Money Price { get; set; }
}
public MyDbContext : DbContext
{
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Rate>(entity =>
{
entity.OwnsOne(e => e.Currency);
});
}
}
Я не действительно, если он использует ComplexTypeAttribute
или нет. Но когда я сгенерировал миграцию через Add-Migration, он сгенерировался, как ожидалось, для старой документации ComplexType таким образом (то есть таблица с именем Rate
имеет столбец Price_Amount
).