class – MVC 5 – 控制器配置方法
发布时间:2020-12-16 03:29:44 所属栏目:asp.Net 来源:网络整理
导读:我正在开发一个MVC 5互联网应用程序.我的控制器中有以下方法: protected override void Dispose(bool disposing){ if (disposing) { db.Dispose(); } base.Dispose(disposing);} 如果我在这个控制器中有一个使用相同db对象的服务类,我是否需要在此服务类中
我正在开发一个MVC 5互联网应用程序.我的控制器中有以下方法:
protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); } 如果我在这个控制器中有一个使用相同db对象的服务类,我是否需要在此服务类中使用Dispose()方法,或者控制器中的Dispose()方法是否需要处理? 提前致谢. 解决方法
一般来说:班级应该处理它负责的任何一次性用品.责任本质上归结为它是否“拥有”依赖性.换句话说,如果它是该类的一个字段并且该类实例化它,那么它也应该处理它.
对于您的服务,虽然服务类上可能存在上下文字段,但您通过构造函数将上下文注入服务,而不是让服务实例化它.因此,服务处理上下文是不合适的,因为它不“拥有”它. 此外,如果您使用依赖注入容器,使控制器不再实例化上下文,而只是将其注入其构造函数中,那么您也不应该将其丢弃在控制器中. DI容器最终将负责处置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 删除事件后GridView没有刷新
- asp.net-mvc – ASP.Net MVC – 处理不好的URL参数
- asp.net – Elmah vs Elmah.MVC Nuget软件包 – 哪些使用和
- asp.net-mvc – telerik-grid onRowSelect如何获取id?
- 即使在阅读之后,ASP.NET TempData也不会被清除
- asp.net-mvc-3 – MVC 3 $.ajax – 响应似乎是从部分视图缓
- asp.net-mvc – 如何为ASP.NET MVC站点定义catch-all路由?
- asp.net-mvc-3 – MVC将方法添加到jquery.validate.unobtru
- asp.net-mvc – 我可以从MVC中的View访问Resources文件吗?
- asp.net-mvc – HtmlHelper扩展方法vs部分视图?
推荐文章
站长推荐
- 什么是ASP.NET的最佳/推荐的CAPTCHA组件
- asp.net-core – 如何在部署asp.net核心应用程序
- ASP.NET Core中的Startup.cs中的asp.net-core –
- asp.net-mvc – 当内容包含PageControl或TabCont
- 使用ASP.NET MVC4 jquery/javascript捆绑
- asp.net-mvc-3 – Telerik MVC网格,在运行时从集
- ASP.NET C#列出哪些以及何时?
- asp.net – 在Visual Studio中禁用浏览器链接选项
- asp.net-mvc – ASP.NET MVC Beta授权属性发送给
- ASP.Net Web应用程序尝试使用Impersonation和Del
热点阅读