当ASP.NET MVC应用程序中的操作时间超出预设的时间,就会出现ExecutionTimeout问题。为解决此问题,可以通过以下步骤:
这将设置应用程序的操作时间最大值为300秒。
[HttpPost] [CustomActionFilter] //该行代码是自定义的Action过滤器 [Timeout(120)] //该行代码设置操作时间为120秒 public ActionResult MyAction() { //你的代码 }
public class CustomActionFilter : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { HttpContext.Current.Server.ScriptTimeout = 300; } }
public async Task
在这个代码中,使用了异步操作来避免操作时间超时。即使操作时间超过了预设的时间,也不会抛出ExecutionTimeout异常。
∠