【问题标题】:Error using Server.Execute outside of controller在控制器外部使用 Server.Execute 时出错
【发布时间】:2015-10-19 14:19:20
【问题描述】:

我正在尝试通过外部函数在控制器外部运行 Server.Execute。我尝试传递多种类型的对象以使其正常工作,但每次我收到一个错误说Error: Error executing child request for [url]

这是我的代码在控制器内部的样子:

public async Task<ActionResult> Exec(){
    var http = HttpContext; //<- doesn't work
    http = HttpContext.ApplicationInstance.Context; //<- doesn't work

    return execMethodAsync(http);
}

那么在另一个类中的代码是:

public async Task execMethodAsync(HttpContext context){
   context.Server.Execute("/myurl"); // <-- Throws error
}

我已尝试将多个对象类型传递给此方法,但仍然出现此错误。

我尝试传递HttpContextHttpContext.CurrentHandlerControllerContext.HttpContext 甚至其他一些,但仍然出现此错误。在控制器之外运行Server.Execute() 似乎几乎是不可能的。有人可以帮忙在控制器之外执行Server.Execute 吗?

【问题讨论】:

    标签: asp.net asp.net-mvc asp.net-mvc-3


    【解决方案1】:

    这可能是由一些原因造成的,您尝试过吗

    HttpContext.Current.RewritePath("yourpage.aspx");
    

    【讨论】:

    猜你喜欢
    • 2017-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-10
    • 2019-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多