У меня проблемы с извлечением данных из базы данных sql с помощью EF (4.7).
Моя модель выглядит примерно так:
public class User : MyEntity<User> {
public User(string userId) : base(userId) {//Some other props}
}
public abstract class MyEntity<T> where T : class
{
protected MyEntity(string userId)
{
UserId = userId;
base.Update(userId);
}
}
Итак, ошибка довольно Очевидно, что мне нужен конструктор без параметров для User. Однако, поскольку это система, основанная на пользователях, у меня большинство моделей наследуются от базового класса. Таким образом, это будет означать, что всем моим классам нужен конструктор по умолчанию, чтобы позволить EF связываться с моделью. Не совсем идеально, поскольку он смягчает способ построения модели предметной области.
Я попытался добавить защищенный конструктор в MyEntity, чтобы решить эту проблему, но EF, похоже, не подхватил это. Приветствуются любые указатели.