我正在尝试为MVC控制器执行自定义ActionResult。在我看的例子中,它显示了下面的片段。我的System.Web.Mvc.MvcHttpHandle没有实现IHttpHandler接口。 System.Web.Mvc.dll是版本1.0.0.0。我应该只编写自己的httphandler,还是需要在Controller ActionResult中使用MvcHttpHandler特有的东西?
/// <summary>
/// Transfers execution to the supplied url.
/// </summary>
public class TransferResult : RedirectResult
{
public TransferResult(string url)
: base(url)
{
}
public override void ExecuteResult(ControllerContext context)
{
var httpContext = HttpContext.Current;
httpContext.RewritePath(Url, false);
IHttpHandler httpHandler = new MvcHttpHandler();
httpHandler.ProcessRequest(HttpContext.Current);
}
}
谢谢,
〜乙
答案 0 :(得分:1)
我想出了一个解决方案
我改变了:
IHttpHandler httpHandler = new MvcHttpHandler();
为:
IHttpHandler httpHandler = new MvcHandler(context.RequestContext);