我正在创建一个mvc项目来学习存储库模式。我正在使用DBFirst方法+实体框架+ Unity for DI。我正在关注这篇文章:
我已经关注了这篇文章,并且工作正常。但是之后我
在数据库Teacher中创建一个新表并更新数据库
稍后我添加了TeacherInfoRepository,在unityconfig文件中注册了TeacherInfoRepository
添加控制器,然后添加视图
我按照上述文章中的定义执行了上述步骤。 但是在我尝试运行/ Teachers / Index视图后,它给出了错误:
The property context on type ProjectName.Repositories.TeacherInfoRepository is not settable.
我在Google上进行了搜索,但不幸的是找不到这样的东西。
请指导我。预先感谢。
答案 0 :(得分:0)
我检查了您在链接上提供的示例,以及GitHub上的源代码,但似乎在您的统一配置中缺少所声明的context属性的注入。
这意味着在文件UnityConfig.cs的此行之前:
container.RegisterType<IRepository<EmployeeInfo,int>,EmployeeInfoRepository>();
您应该输入以下内容:
container.RegisterType<ApplicationEntities>();
这将允许在统一创建EmployeeInfoRepository实例时实例化访问数据库所需的上下文。