Контекст свойства для типа ProjectName.Repositories.MyRepo не устанавливается? - PullRequest
0 голосов
/ 31 октября 2018

Я создаю проект MVC для изучения шаблона репозитория. Я использую подход DBFirst + Entity Framework + Unity для DI. Я следую за этой статьей:

https://www.dotnetcurry.com/aspnet-mvc/1155/aspnet-mvc-repository-pattern-perform-database-operations

Я следил за этой статьей, и она работает нормально. Но после этого я

создал новую таблицу в базе данных Учителя и обновил базу данных

Позже я добавляю TeacherInfoRepository, в файле unityconfig зарегистрирован TeacherInfoRepository

Добавить контроллер и затем добавить представление

Я выполнил вышеуказанные шаги, как это определено в статье, которую я упомянул выше. Но после того, как я попытался запустить / Teachers / Index view, выдает ошибку:

The property context on type ProjectName.Repositories.TeacherInfoRepository is not settable.

Я искал в Google, но, к сожалению, не нашел ничего подобного.

Пожалуйста, ведите меня. Заранее спасибо.

1 Ответ

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

Я проверяю пример, который вы предоставили по ссылке, а также исходный код на GitHub, но кажется, что в вашей конфигурации Unity отсутствует внедрение свойства context, которое вы объявили.

Это означает, что в файле UnityConfig.cs перед этой строкой:

container.RegisterType<IRepository<EmployeeInfo,int>,EmployeeInfoRepository>();

Вы должны поставить что-то вроде:

container.RegisterType<ApplicationEntities>();

Это позволит при создании единства экземпляра EmployeeInfoRepository для Unity создавать контекст, необходимый для доступа к базе данных.

...