ef core 2.2 Предварительный просмотр изменения миграции - PullRequest
0 голосов
/ 23 ноября 2018

мы только что обновили Entity Framework Core с 2.1 до 2.2.Preview3.Кажется, что мигратор / модельщик изменился, и мне интересно, если это ошибка или исправление.

Если есть следующий объект:

public class User {
    public string UserName { get; set; }
    public Guid? PasswordGUID { get; set; }
    [ForeignKey("PasswordGUID")]
    public Password Password { get; set; }
}

Класс объекта Пароль не имеет свойства навигации длякласс сущности User.

В EfCore 2.1 отношение «Пароль пользователя» получило следующие строки в файле modelsnapshot:

...
u.Property<Guid?>("PasswordGUID");
...
u.HasIndex("PasswordGUID");
...
u.HasOne("Password", "Password")
    .WithMany()
    .HasForeignKey("PasswordGUID");

Теперь после обновления с EfCore 2.1 до 2.2.Preview3 (классы сущности сделалибез изменений) модель получила следующие изменения:

...
u.Property<Guid?>("PasswordGUID")
    .IsRequired();
...
u.HasIndex("PasswordGUID")
    .IsUnique();
...
u.HasOne("Password", "Password")
    .WithOne()
    .HasForeignKey("PasswordGUID")
    .OnDelete(DeleteBehavior.Cascade);

Итак, как указано выше, мой вопрос: это правильно?Должен ли я теперь «отменить» эти изменения в API модели Fluent Fluent или это ошибка?

Sidenote: Странно, я заметил, что с EfCore 2.1 такое же поведение, когда я удалил атрибут »[ForeignKey (« PasswordGUID »)")]"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...