【发布时间】:2015-02-08 20:09:38
【问题描述】:
我正在尝试开发一个调用存储过程的 Web 服务。这个存储过程很长(大约 1 小时 30 分),它在数据库中执行了许多“计数”和“插入”。 为了启动这个过程,我使用了一个 C# 类任务;这是一个例子:
[HttpPost]
[Route("updateData/{date:datetime?}")]
public JsonResult UpdateData(DateTime? date) {
try {
Task.Factory.StartNew(() => Data.UpdateData(date), TaskCreationOptions.LongRunning);
return Json("UpdateData successfully started !");
}
catch (Exception e) {
return Json("Error UpdateData: " + e);
}
}
当我在本地环境中测试时,它可以工作;但是当我在 Azure 上工作时,该过程会在大约 30 分钟后停止。
为了启动 Web 服务,我使用 Microsoft Azure 调度程序。
问题似乎不是存储过程,但似乎是在使用任务(因为没有任务它工作)。
有什么特别的事情要做吗?
【问题讨论】:
-
你是如何在 azure 调度程序中运行它的?在 ASP.NET 应用程序中?
-
我使用 Microsoft azure 管理控制台(图形);有了它,可以启动准时或周期性的任务;多亏了这个,我启动了我的网络服务。
-
网络服务是一个什么样的应用程序?类库?
-
Web 服务是在控制器中调用的方法(ASP.NET MVC5)
-
我假设您的 ASP.NET 托管在 IIS 中?
标签: c# .net azure stored-procedures task-parallel-library