Sitecore:InvalidOperationException:异步操作方法'搜索'无法同步执行

时间:2015-02-10 14:42:17

标签: asp.net-mvc-4 asynchronous .net-4.0 sitecore sitecore6

我们在.NET 4.0下使用Sitecore 6.6并使用MVC 4。我们正在尝试在其中实现asyncontroller和async操作。

我们使用ajax请求调用此操作。我们已经设置了一个到该操作的路由,并且还将该路由添加到IgnoreUrlPrefixes配置属性中。

但是,在sitecore之外工作的相同操作只返回以下异常(包括堆栈跟踪):

[InvalidOperationException: The asynchronous action method 'Search' cannot be executed synchronously.]
System.Web.Mvc.Async.AsyncActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +133 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +39 
System.Web.Mvc.<>c__DisplayClass13.<InvokeActionMethodWithFilters>b__10() +124 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation) +855026 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation) +855026 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +309 
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +345 

我在论坛中读到Sitecore同步执行(http://sdn.sitecore.net/forum//ShowPost.aspx?PostID=66991)。

我正在徘徊我需要采取哪些步骤才能从ajax请求中异步调用此操作?

我们无法使用.NET 4.5,因此需要使用旧式的异步操作,而不是使用' await'关键字

任何可以提供的帮助都会非常有用。

谢谢

1 个答案:

答案 0 :(得分:1)

根据下表,遗憾的是,Sitecore 6.6不支持MVC 4,这可能是您看到这些错误的原因:https://kb.sitecore.net/articles/087164