3

Я пробую вещи на бета-версии MVC4. Проект находится в VS11, EF 5.0-Beta, используя подход Code First. Создал простой класс класса poco и DbContext с единственным свойством IDbSet <> для класса модели. Строка подключения с LocalDb.Ошибка при создании <DbContext>

я заметил, когда Entity Set свойство Context является тип IDbSet <> тогда я получаю сообщение от VS, когда я пытаюсь создать новый контроллер с «Контроллер с чтения/записи действий и представлений, с помощью Entity Framework» шаблон Леса строительные: " Произошла ошибка при генерации «MyProject.MyNamespace.MyContext». Попробуйте перестроить свой проект ». Даже Clean Solution и здание снова не помогают.

Если я изменил свойство Entity Set, введите тип DbSet <>, тогда подсистемы управления успешно завершатся. Это ошибка или она ожидаема?

Br, Лаури

ответ

-1

Это не ошибка, вы не можете создать экземпляр экземпляра интерфейса. I перед IDbSet обозначает тип как интерфейс (по соглашению). Таким образом, вы пытались создать экземпляр этого интерфейса. Вместо этого вам нужно обработать его с помощью DBSet <> который представляет собой реализацию интерфейса IDBSet <>. Надеюсь, это прояснит вашу проблему.

+0

ОК, но после строительных лесов с помощью свойств DbSet <> я могу изменить их на IDbSet <> и создавать и работать с приложениями. Это результат разрешения типа .Net или что-то в этом роде? – LauriSaar

+0

Правильный синтаксис заключается в использовании DbSet <>, а не IDbBSet <>, насколько я знаю – Kevin

Смежные вопросы