C# 使用来自 Main 的参数调用异步任务时出错



这是我的方法,一个异步的HTTP POST:

public async Task CreateConsentAsync(Uri HTTPaddress, cHeaders cconsHeaders, cBody ccons, HttpMethod Method)
{
try
{
HttpClient client = new HttpClient();
System.Text.UTF8Encoding utf8 = new System.Text.UTF8Encoding(encoderShouldEmitUTF8Identifier: false, throwOnInvalidBytes: true);
using (HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, HTTPaddress))
{
client.BaseAddress = HTTPaddress;
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("*/*"));
client.DefaultRequestHeaders.Add("Connection", "keep-alive");
client.DefaultRequestHeaders.Add("Cache-Control", "no-cache");
client.DefaultRequestHeaders.Add("SomeHeader", cconsHeaders.SomeHeader);
//etc..
request.Content = new StringContent(JsonConvert.SerializeObject(ccons, Formatting.Indented), utf8, "application/json");
using (HttpResponseMessage response = await client.SendAsync(request).ConfigureAwait(false))
{
Int32 code = (Int32)response.StatusCode;
Console.ReadLine();
}
}
}
catch (Exception e)
{
Console.WriteLine("Error in " + e.TargetSite + "rn" + e.Message); Console.ReadLine();
}
}

当我尝试从 Main 调用它时,正确提供所有参数,例如:

CreateConsentAsync(NewConsent.BaseURL, NewConsent.Headers, NewConsent.Body, HttpMethod.Post).GetAwaiter().GetResult();

我收到错误:

非静态字段、方法或属性需要对象 'Program.CreateConsentAsync(Uri, cHeaders, cBody, HttpMethod('

任何想法和帮助将不胜感激。

方法CreateConsentAsync是一个实例方法,因此不是静态方法。如果要将其调用为共享的错误消息,则应将其标记为静态消息:

public static async Task CreateConsentAsync

最新更新