本文介绍了ExecuteCore()在基类MVC 4 beta中没有被解雇的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个基础类:

和我的所有其他控制器继承此BaseClass的这样

这所有MVC3的伟大工程(再次测试今天,它确实有效),但它似乎在BaseController的ExecuteCore没有打响了MVC 4 beta中了。

你知道吗?或任何有巨大的引擎盖下的变化?非常感谢。

 公共类BaseController:控制器
{
    私人字符串_myData;    公共字符串迈德特
    {
        得到
        {
            返回_myData;
        }
    }    保护覆盖无效ExecuteCore()
    {
        _myData =我正在做的事情;        base.ExecuteCore();
    }
}
公共类HomeController的:BaseController
{
    公众的ActionResult指数()
    {
        ViewBag.MyData = MyData的;
        //用做有价值的东西在的BaseClass        返回查看();
    }
}


解决方案

我能够重现你的问题。看来, ExecuteCore 的使用被改变。但我还没有找到关于它的任何信息。我想这是相关的事实,现在控制器工具 IAsyncController 不是 AsyncController

不过,我已经找到一个解决办法来获取旧的行为与MVC4:

这添加到 BaseContoller

 保护覆盖布尔DisableAsyncSupport
{
    获得{返回true; }
}

从MSDN页面 DisableAsyncSupport (强调由我添加):

这篇关于ExecuteCore()在基类MVC 4 beta中没有被解雇的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-23 01:27