controller – 基类中的ExecuteCore()在MVC 4 beta中未触发
我有一个基本控制器类:
和所有我的其他控制器继承这个BaseClass像这样 所有这些工作伟大的MVC3(测试今天,它真的工作),但似乎在BaseController的ExecuteCore不会被触发任何更多的MVC 4 beta。 任何想法?或者什么巨大已经改变了引擎盖下?非常感谢。 public class BaseController : Controller { private string _myData; public string MyData { get { return _myData; } } protected override void ExecuteCore() { _myData = "I am doing something"; base.ExecuteCore(); } } public class HomeController : BaseController { public ActionResult Index() { ViewBag.MyData = MyData; // Doing something with value in BaseClass return View(); } } 解决方法
我能够重现你的问题。看来ExecuteCore的用法被改变了。但我没有找到任何有关它的信息。我的猜测它与事实,现在的Controller实现IAsyncController而不是AsyncController。
但是,我发现了一个解决方法,以获得旧的行为与MVC4: 将此添加到BaseContoller: protected override bool DisableAsyncSupport { get { return true; } } 从MSDN页面为DisableAsyncSupport(强调由我添加):
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 授权 – ASP.NET Web API基本身份验证授权标头
- asp.net – 如何在没有phsyical .ASMX文件的情况下实现WebS
- asp.net-mvc-2 – 使用.Net Framework 4.0的Sharepoint 201
- asp.net-mvc – 传递IEnumerable变量以在ASP.NET MVC中查看
- asp.net – 什么是错误代码是0x80070001?那我该怎么解决呢
- 如何重用这个基于ASP.NET和C#中的Ultimate RestSharp客户端
- asp.net-mvc-4 – URL以’/’结尾时的服务器错误
- asp.net-mvc-5 – 更改消息“密码必须至少包含一个非字母或
- Asp.NET Core+ABP框架+IdentityServer4+MySQL+Ext JS之验证
- 想要像asp.net或stackoverflow那样选择标签吗?