[英]How to call a web service in “fire and forget” way from ASP.Net
我有一個Web服務,我想從我的一個asp.net類調用。 我可以成功調用我的Web服務。但現在我需要異步調用此服務。 我需要調用它而不是等待服務完成執行。 我不需要處理來自服務的響應,也不需要驗證服務是否成功執行。 我想要的就是能夠打電話給服務並自由地做其他事情。
您需要異步使用Web服務。 轉到並檢查
AddServiceReference -> Advance -> generate asynchronous operations.
在此之后,對於每種方法,您都可以使用異步回調事件假設您在服務中使用ABC方法時將同步使用這些方法,這些方法將在您的應用程序中可用
1>ABC (fire and wait for output)
2>ABCAsync(fire and forget)
3>ABC callback event(get fired <if ABCAsync is called> when data available in your application)
實現“即發即IsOneWay
方法的一種方法是在OperationContract
屬性上使用IsOneWay
屬性,如下所示:
[OperationContract(IsOneWay=true)]
public void SomeMethod(string someValue);
設置為true時,操作不會返回消息。 請注意,標記為單向的方法不能具有返回類型或ref
或out
參數(這是有意義的)。 它也不應該與異步調用混淆,因為它不是一回事(事實上,如果需要一段時間才能獲得連接,單向調用可能會阻塞客戶端)。
有關更多信息,請參見OperationContractAttribute.IsOneWay屬性 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.