0
我對asp和c#相對較新。我是如何(或在哪裏)調用我的異步操作方法
我有以下異步操作方法調用外部api並返回HttpResponseMessage。我希望它在運行時調用Index()動作方法時運行。我試圖從Index()內部調用它,但它說Index()應該是異步的,但我不知道如何使它異步,或者即時通訊做所有錯誤。
async static void PostRequest(string url, string userID, string accessKey, string djID, string artistName, string artistURL)
{
IEnumerable<KeyValuePair<string, string>> queries = new List<KeyValuePair<string, string>>()
{
new KeyValuePair<string, string>("UserID", userID),
new KeyValuePair<string, string>("AccessKey", accessKey),
new KeyValuePair<string, string>("DJID", djID),
new KeyValuePair<string, string>("ArtistName", artistName),
new KeyValuePair<string, string>("URL", artistURL)
};
HttpContent q = new FormUrlEncodedContent(queries);
using (HttpClient client = new HttpClient())
{
using (HttpResponseMessage response = await client.PostAsync(url, q))
{
using (HttpContent content = response.Content)
{
string myContent = await content.ReadAsStringAsync();
HttpContentHeaders headers = content.Headers;
System.Diagnostics.Debug.WriteLine(myContent);
}
}
}
}
請查看https://docs.microsoft.com/en-us/aspnet/mvc/overview/performance/using-asynchronous-methods-in-aspnet-mvc-4 – hardkoded