C# 如何等待(数据库更改);在WebAPI控制器c中#
我有一些为移动应用程序编写的Web Api控制器 在其中一个控制器中,我在数据库中插入了一些数据(状态为0),然后我需要等待其他外部调用来更改状态,当状态发生更改时(或10秒后),返回一个json 所以继续:我需要等待表上的一列(具有唯一ID)发生更改,然后我的Web Api控制器才能继续。。。如果列在10秒内没有更改,则它将返回一个错误 我试图使用SqlDependency,但我无法让它等待更改,我不想在更改后触发某些内容,我需要知道它在等待时是否已更改 我需要这样的东西:C# 如何等待(数据库更改);在WebAPI控制器c中#,c#,.net,api,web,controller,C#,.net,Api,Web,Controller,我有一些为移动应用程序编写的Web Api控制器 在其中一个控制器中,我在数据库中插入了一些数据(状态为0),然后我需要等待其他外部调用来更改状态,当状态发生更改时(或10秒后),返回一个json 所以继续:我需要等待表上的一列(具有唯一ID)发生更改,然后我的Web Api控制器才能继续。。。如果列在10秒内没有更改,则它将返回一个错误 我试图使用SqlDependency,但我无法让它等待更改,我不想在更改后触发某些内容,我需要知道它在等待时是否已更改 我需要这样的东西: int Reque
int RequestStatus = await CheckRequestStatusChangeOnDB(RequestID,10);
//await until database change or until 10 seconds has passed...
if (RequestStatus == 1)
{//do something}
if (RequestStatus == 2)
{//do something}
if (RequestStatus == 0)
{//no change in database}
谁能帮帮我吗
非常感谢你的帮助 您可以使用
WhenAny
创建一个任务,该任务将在多个任务中的一个任务完成后与任务一起完成。Delay
创建一个任务,该任务将在10秒内完成。完成任何任务后,您可以检查任务是否已完成,如果已完成,结果如何。谢谢@servy。。。这将解决这两种情况。。。。但是检查数据库上的更改怎么样。。。我该怎么处理呢??。。。如何对CheckRequestStatusChangeOnDB进行编码?谢谢@里卡多·埃斯科瓦尔:这个问题和你问的完全不同。也许我没有解释清楚@servy,对此我很抱歉。。。真的有两个问题在一个。。。第一个(关于两个条件的任务)你已经回答了,我很感激。。。第二个是等待数据库更改以给出结果(这就是为什么我在标题上有它并对SqlDependency进行了评论)。。你能帮我吗?谢谢你有什么想法吗?