C#调用带有Main参数的异步任务时出错
这是我的方法,一个异步HTTP POST:C#调用带有Main参数的异步任务时出错,c#,asynchronous,task,httprequest,C#,Asynchronous,Task,Httprequest,这是我的方法,一个异步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.U
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 + "\r\n" + e.Message); Console.ReadLine();
}
}
当我尝试从Main调用它时,正确地提供所有参数,如:
CreateConsentAsync(NewConsent.BaseURL, NewConsent.Headers, NewConsent.Body, HttpMethod.Post).GetAwaiter().GetResult();
我得到一个错误:
非静态字段、方法或属性需要对象
'Program.createApprovanceAsync(Uri、cHeaders、cBody、HttpMethod)'
如果您有任何想法和帮助,我们将不胜感激。该方法是一种实例方法,因此不是静态方法。如果要将其称为共享的错误消息,应将其标记为静态消息:
public static async Task CreateConsentAsync
这回答了你的问题吗?谢谢你#塞尔文它帮助了我们,但这也是另一个问题;成功了。然而:在另一个名称空间中,我创建了一个类,比如说ClassA,在里面我创建了blabla mynew=new blabla(我已经完成了两个项目之间的依赖关系),然后我试图找到mynew.createApprovanceAsync,并且没有出现在Intellisense中;产生错误。如果你觉得这是可以做到的,请分享一只鹬,我真的很坚持这个。。。谢谢你的更正@尼克:嗨,不客气。你能通过更新你的帖子来分享你说你有问题的代码吗?谢谢