Код: Выделить всё
public class StoredArticle
{
public int Id { get; set; }
public string Title { get; set; }
public StoredTimePeriod TimePeriod { get; set; } = null!;
}
public class StoredTimePeriod
{
public int Id { get; set; }
public string Name { get; set; }
public DateTime Start { get; set; }
public DateTime End { get; set; }
}
Вот как я настраиваю их отношения:
Код: Выделить всё
modelBuilder.Entity(entity =>
{
entity
.HasOne(e => e.TimePeriod)
.WithOne()
.HasForeignKey("TimePeriodId")
.OnDelete(DeleteBehavior.Cascade);
});
- При удалении статьи TimePeriod остается в базе данных.
При удалении TimePeriod статья также удаляется (каскадом)
Подробнее здесь: https://stackoverflow.com/questions/785 ... e-principa