c# – 使用属性注入而不是构造函数注入
发布时间:2020-12-15 17:40:01 所属栏目:百科 来源:网络整理
导读:长篇小说,我试图使用ELMAH与MVC 2和Ninject,我需要使用无参数的构造函数.我在这里创建了一个初步的帖子: Using a parameterless controller constructor with Ninject? 我被建议使用物业注入而不是构造器注入.所以我从此移开: public class DepartmentsCon
长篇小说,我试图使用ELMAH与MVC 2和Ninject,我需要使用无参数的构造函数.我在这里创建了一个初步的帖子:
Using a parameterless controller constructor with Ninject?
我被建议使用物业注入而不是构造器注入.所以我从此移开: public class DepartmentsController : Controller { private IDepartmentsRepository departmentsRepository; public DepartmentsController(IDepartmentsRepository departmentsRepository) { this.departmentsRepository = departmentsRepository; } ... } 到这个: public class DepartmentsController : Controller { private IDepartmentsRepository _departmentsRepository; [Inject] public IDepartmentsRepository DepartmentsRepository { get { return _departmentsRepository; } set { _departmentsRepository = value; } } ... } 但是在我的其他控制器功能中,无论我尝试访问DepartmentsRepository还是_departmentsRepository,当我尝试访问它时,我得到的对象引用未设置为对象的一个??实例错误. 还有什么我需要做的吗 解决方法
我也有类似的问题.看看我的问题:
Using Ninject with Membership.Provider.
基本上,当你初始化DepartmentsController时,你需要注入(即你的部门控制器进入你的Ninject内核,所以它的东西像: public class DepartmentsController : Controller { private IDepartmentsRepository _departmentsRepository; [Inject] public IDepartmentsRepository DepartmentsRepository { get { return _departmentsRepository; } set { _departmentsRepository = value; } } public DepartmentsController() { NinjectHelper.Kernel.Inject(this); } } 在这种情况下,NinjectHelper获取当前的Ninject Kernel. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- xml文本内容中发现无效字符”的解决方案
- 为什么要使用NoSQL
- c# – 如何获取HttpWebRequest.AllowAutoRedirect在重新编写
- Internationalization with the Dojo Toolkit
- AVG防病毒软件将我的React Native Android应用程序检测为恶
- Qt C应用程序:Linux中的自动启动安装
- 加载cocos studio 2.0导出的csb文件
- c# – 使用方法选择新对象的Linq-To-Entities
- Flex+FluorineFx与.net基础三
- 依赖注入 – Web Api使用IDependencyResolver实现启动异常