Я хочу создавать таблицы базы данных, используя ядро Entity Framework из POCO-классов.Когда я пытаюсь добавить новый элемент скаффолда (опция: Razor страниц с использованием Entity Framework (CRUD) в VS), появляется ошибка: «Не найден подходящий конструктор для типа сущности« Uri »
Я узнал, что(среди прочего) Uri должен быть преобразован в String в методе OnModelCreating (в классе, который наследуется от dbContext).
Класс DbContext:
public class SchoolDbContext : DbContext {
public DbSet<Student> Students { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder) {
modelBuilder.Entity<Student>()
.Property(t => t.Homepage)
.HasConversion(
v => v.ToString(),
v => new Uri(v));
}
}
Класс ученика:
public class Student {
public int ID { get; set; }
public Uri Homepage {get; set; }
}
Я знаю, что метод OnModelCreating вызывается при вводе команды «Начальная миграция добавления».Но поскольку я попытался автоматически реализовать классы CRUD, я не могу ввести команду «Добавить начальную миграцию».Большое спасибо и извините за мой плохой английский ..