【发布时间】:2013-02-21 04:03:36
【问题描述】:
这段代码在我的本地机器上运行良好
public async Task<ActionResult> teststuff()
{
using (var client = new HttpClient())
{
var twitter = await client.GetStringAsync("http://www.twitter.com");
Response.Write(twitter);
}
return View();
}
但是当我上传到服务器时,我得到了错误响应
“/”应用程序中的服务器错误。
异步操作方法“teststuff”返回一个任务,它 不能同步执行。描述:一个未处理的 执行当前 Web 请求期间发生异常。 请查看堆栈跟踪以获取有关错误的更多信息和 它起源于代码的地方。
异常详细信息:System.InvalidOperationException:异步 操作方法“teststuff”返回一个无法执行的任务 同步。
来源错误:
在执行过程中产生了一个未处理的异常 当前的网络请求。有关原产地和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈跟踪:
[InvalidOperationException:异步操作方法'teststuff' 返回一个Task,不能同步执行。]
System.Web.Mvc.Async.TaskAsyncActionDescriptor.Execute(ControllerContext 控制器上下文,IDictionary2 parameters) +1252 参数)+39
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
System.Web.Mvc.c__DisplayClass13.b__10() +120 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter 过滤器,ActionExecutingContext preContext,Func1 continuation) +6371 过滤器,ActionDescriptor actionDescriptor, IDictionary`2 参数)+307
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +688
NotFoundMvc.ActionInvokerWrapper.InvokeActionWith404Catch(ControllerContext 控制器上下文,字符串 actionName) +54
NotFoundMvc.ActionInvokerWrapper.InvokeAction(ControllerContext 控制器上下文,字符串动作名称)+19
System.Web.Mvc.c__DisplayClass1d.b__19() +40
System.Web.Mvc.Async.c__DisplayClass1.b__0() +15
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +53 System.Web.Mvc.Async.c__DisplayClass4.b__3(IAsyncResult ar) +15
System.Web.Mvc.c__DisplayClass8.b__3(IAsyncResult asyncResult) +42
System.Web.Mvc.Async.c__DisplayClass4.b__3(IAsyncResult ar) +15
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +606 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +288----------------------------------- --------------------------------- 版本信息:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.17929
我的服务器上缺少一些东西,但无法找出它是什么,任何帮助将不胜感激。
我已尝试在服务器上重新安装 .net framework 4.5,但没有效果。但是我确实在服务器上注意到它同时具有
Microsoft .NET Framework 4 多目标包和 Microsoft .NET Framework 4.5 多目标包
不确定我是否应该删除 4 个?
谢谢
【问题讨论】:
-
您是否将
/configuration/system.web/compilation@targetFramework设置为4.5? -
是的,我只是检查了一下,targetFramework 设置为 4.5