2017-08-11 4 views
0

から私はMVC 5 APPをやっていると私はこのMVCコールAPIコントローラ、私はこのエラーを得たPostAsJsonAsyncがSESSION_START

HttpResponseMessage response = await client.PostAsJsonAsync(apiUrl + "Method/Action",param); 

ようPostAsJsonAsyncを使用してアピコントローラを呼び出しています

[InvalidOperationExceptionが非同期モジュールまたは非同期操作がまだ保留中の間にハンドラが完了しました。]

私はこのcalを実行していますlからGlobal.asaxSession_Startからです。

サイトにアクセスするすべての人を登録することを意図しています。 私は変更する必要がありますSession_Startasync void Session_Start

どのようにこの状況を管理できますか?呼び出しプロセスを非同期にする

答えて

0

私は here

を見て、この

public static long Insert_SessionStart() 
 
{ 
 
var response = client.PostAsJsonAsync(apiUrl + "Method/acti", param).Result; 
 
    if (response.IsSuccessStatusCode) 
 
    return response.Content.ReadAsAsync<long>().GetAwaiter().GetResult(); 
 
    
 
}
ため

public static async Task<long> Insert_SessionStart(
 
{ 
 
HttpResponseMessage response = await client.PostAsJsonAsync(apiUrl + "Method/Action", param); 
 

 
if (response.IsSuccessStatusCode) 
 
    return response.Content.ReadAsAsync<long>().Result; 
 
    
 
    }

を置き換えます

このように私は入れないでくださいawaitメソッドSession _start。

関連する問題