C# ASp.net MVC长时间运行的控制器任务
我的控制器操作需要很长时间才能运行(预期)。在下面的代码中C# ASp.net MVC长时间运行的控制器任务,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,我的控制器操作需要很长时间才能运行(预期)。在下面的代码中 ProcessImportFileAPI(HoldAPI) 1小时后超时 public JsonResult DataFileUpload(string positionDate) { // Reset validation error collection ImportDataValidationErrors = new List<ImportFileRecor
ProcessImportFileAPI(HoldAPI)
1小时后超时
public JsonResult DataFileUpload(string positionDate)
{
// Reset validation error collection
ImportDataValidationErrors = new List<ImportFileRecord>();
string[] errs;
try
{
var HoldAPI = "SomeAPI"
retDictAPI = ProcessImportFileAPI(HoldAPI);
string ReturnVal = "Import is successful";
return Json(ReturnVal); //never return because of TIMEOUT.
}
公共JsonResult数据文件上载(字符串位置日期)
{
//重置验证错误集合
ImportDataValidationErrors=新列表();
字符串[]错误;
尝试
{
var HoldAPI=“SomeAPI”
retDictAPI=ProcessImportFileAPI(HoldAPI);
string ReturnVal=“导入成功”;
return Json(ReturnVal);//由于超时而从不返回。
}
控制器操作正在正确执行所有TAK,但由于超时,我无法将值返回视图。我如何解决此问题?有指针吗?我使用异步控制器来解决我的问题。因此我假设
HoldAPI
没有返回任何结果。这是第三方API还是您编写的?代码中的内容也很有趣sideProcessImportFileAPI
methodProcessImportFileAPI(HoldAPI)接收HoldAPI,完成(获取市场数据、更新记录等)需要>1小时。这是预期的。调试时,我的代码会一直出现,直到返回Json(ReturnVal);但是view什么也得不到。如果你真的在运行一个预计需要1小时的东西,那么你需要把它转移到某种排队系统上。(异步运行。)async做到了这一点。