0
我有一個函數通過HttpClient異步調用外部用戶配置文件WebAPI。根據返回的配置文件,該函數將一些屬性值作爲參數傳遞給存儲庫以獲取參數化數據。問題在於,即使在異步方法返回任何響應之前,函數也會從存儲庫中獲取數據。我會使用阻止同步方法,但HttpClient只提供GetAsync和ReadAsStringnAsync方法。我該怎麼辦?謝謝。異步方法依賴關係
private async Task <IQueryable<WorkItem>> GetSingleProfile(string networkName) {
UserProfile thisProfile = await HttpClientWrapper.Get <UserProfile> (
System.Configuration.ConfigurationManager.AppSettings["userWebApiEndpoint"], "User/networkname/" + networkName);
IQueryable <WorkItem> userWorkItems = Enumerable.Empty<WorkItem>().AsQueryable();
if (thisProfile != null) {
userWorkItems = _workRepository.getWorkItem(thisProfile.userId);
}
return userWorkItems;
}
你能發佈控制器代碼嗎?所有這些私有方法的調用者(及其所有調用者)都應該標記爲異步。 –
發佈HttpClientWrapper的代碼 –