Контекст свойства для типа projectname.repositories.myrepo не устанавливается?

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

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

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

created a new table in database Teacher and update the database

Later I add TeacherInfoRepository, In unityconfig file registered the TeacherInfoRepository

Add controller and then add view

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

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

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

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

0
0
28
1

Ответы 1

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

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

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

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

container.RegisterType<ApplicationEntities>();

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

Другие вопросы по теме