У меня есть основной профиль сущности, у которого есть имя свойства, которое является объектом значения. У объекта Name есть два свойства First и Last. Когда я использую Fluent API для сопоставления свойств объектов Name со столбцами в таблице Profile, я указываю, что они являются обязательными. Когда я создаю миграцию, он говорит, что значение nullable истинно. Я предполагаю, что это связано с тем, что в EF Core 3.0 собственные сущности теперь необязательны, но как мне сообщить EF, что они действительно необходимы?
public class Profile
{
public Name Name { get; private set; }
...
}
public class Name
{
public string First { get; }
public string Last { get; }
...
}
public override void Configure(EntityTypeBuilder<Profile> builder)
{
base.Configure(builder);
builder.OwnsOne(
navigationExpression: p => p.Name,
buildAction: n =>
{
n.Property(n => n.First)
.HasColumnName("NameFirst")
.HasMaxLength(25)
.IsRequired();
n.Property(n => n.Last)
.HasColumnName("NameLast")
.HasMaxLength(25)
.IsRequired();
});
}
Любая помощь, которую вы можете оказать, была бы замечательной.