EF не распознает новые свойства - PullRequest
0 голосов
/ 23 ноября 2018

На прошлой неделе я создал свои модели для этого проекта, но мне нужно было обновить их на этой неделе.Сначала у моего класса «Person» было только свойство «Name», а теперь у него есть «Firstname» и «Lastname».Теперь я получаю исключение из свойства «Имя», которое даже больше не существует.

БД также не создается, что, скорее всего, является последующей ошибкой.

Ученик

abstract class Person
{
    [Key]
    public int Id { get; set; }

    [MaxLength(100)]
    public string Firstname { get; set; }

    [MaxLength(100)]
    public string Lastname { get; set; }

    public int Age { get; set; }
}

Ученик класса

class Student : Person
{
    public School School { get; set; }

    public virtual ICollection<Order> Orders { get; set; } = new List<Order>();
}

Попытка добавить ученика

using (var ctx = new SchoolDbContext())
        {
            ctx.Persons.Add(new Student() {Firstname="Test" });
            ctx.SaveChanges();
        }

DBContext

class SchoolDbContext : DbContext
{
    public SchoolDbContext() : base("SchoolDB")
    {

    }

    public DbSet<Person> Persons { get; set; }
    public DbSet<School> Schools { get; set; }
    public DbSet<AArticle> Articles { get; set; }
    public DbSet<APublisher> APublishers { get; set; }
    public DbSet<Order> Orders { get; set; }
    public DbSet<Subject> Subjects { get; set; }

}

Исключение

System.InvalidOperationException: «Свойство« Имя »не является строкой илиМассив байтов. Длина может быть настроена только для свойств массива строк и байтов. "

Я попытался очистить решение, перезапустить VS, перестроить и повторно очистить ... Невозможно удалить БД, поскольку БД не создана.

Как мне сообщить компилятору, что свойство "Name" больше не существует, поскольку он сам его не получает?

1 Ответ

0 голосов
/ 24 ноября 2018

Вам необходимо синхронизировать базу данных с вашим кодом с помощью так называемых миграций: - ef core: https://docs.microsoft.com/de-de/ef/core/managing-schemas/migrations/ - ef 6: https://docs.microsoft.com/en-us/ef/ef6/modeling/code-first/migrations/

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