我在C#WepApi上使用PetaPoco,我必须执行一个删除许多表上的行的存储过程。删除它的变量的行数(可能是几个或太多)所以,有时,PetaPoco会抛出超时异常。是否可以使用PetaPoco在程序完成之前“调用”存储过程并关闭连接。存储过程不返回任何值,WebApi不需要知道它什么时候结束......
答案 0 :(得分:2)
您需要什么才能触发后台任务并从WebApi请求返回。 The are several options to run a background task并且不要忘记使用以下命令更改请求超时:
HttpContext.Server.ScriptTimeout = 50 * 60; // 50 minutes
和PetaPoco命令超时使用:
var db = new Database(connectionStringName);
db.OneTimeCommandTimeout = 50;
db.Execute( ... );