[英]WCF Service Reference not giving non-async methods
我最近用C#制作了WCF服務,並將其托管在運行IIS 8的服務器上。
在本地進行測試時,一切工作正常,我能夠成功測試所有方法。 當我嘗試在一個單獨的項目中向該WCF服務添加服務引用時,我的問題就來了,盡管我從未將任何方法實現為async
方法,但此時它公開的唯一方法是async
方法。
方法的一個示例是:
public string getName(User user)
{
return user.name;
}
當我在Visual Studio中對其進行測試時,可以像這樣簡單地完成工作,但是當我將其托管在IIS中並嘗試添加服務引用時,似乎可以調用或訪問的唯一方法是:
getNameAsync
即使我一開始從未將其實現為async
,為什么還要這樣做呢? 最重要的是,當我首先添加服務引用時,無法取消選中“生成異步方法”。
有任何想法嗎?
編輯:作為參考,我正在嘗試在引用該服務的Windows 8.1應用程序中測試這些方法。
這是生成代碼的方式。 通常,您還會找到一個名為GetNameCompleted的事件,您已在客戶端代碼中為其訂閱了這樣的事件(在創建方法ClientGetNameCompleted之后):
client.GetNameCompleted += ClientGetNameCompleted ;
在這種方法中,您將使用服務結果。 像這樣的東西:
private void ClientGetNameCompleted (object sender, GetNameCompletedEventArgs e)
{
if (e.Result != null)
{
// use the e.Result that contains the returned data;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.