繁体   English   中英

如何使用.Net框架v3.5调用异步任务

[英]How to call async Task using the .Net framework v3.5

如何调用异步任务框架 3.5 请帮助我。 我在我的 3.5 框架项目中调用这个方法,它显示了一个错误。任何替代方式使用框架 3.5 发布 json 数据这是我的代码:

public async void APIPushStatusDriverPostion(string direction,string carColor,string supplier_company,string SupplierAccountId,string Karho_Ref,string booking_id,string vehicale_type, string vehicle_id, string vehicle_plate, double latitude, double longitude, string carModel, string status, string driver_id, string driver_phone, string driver_first_name, string driver_last_name)
{
    APIKarhoBookingProperties objbooking = new APIKarhoBookingProperties();
    objbooking.vehicle.vehicle_type   = vehicale_type;
    objbooking.vehicle.vehicle_id     =    vehicle_id;
    objbooking.vehicle.vehicle_plate  = vehicle_plate;
    objbooking.vehicle.latitude       =   latitude;
    objbooking.vehicle.longitude      =    longitude;
    objbooking.vehicle.eta_minutes    = "null";
    objbooking.vehicle.make           = "null";
    objbooking.vehicle.model = carModel;
    objbooking.vehicle.color = carColor;
    objbooking.vehicle.status = status;
    objbooking.vehicle.driver_id = driver_id;
    objbooking.vehicle.driver_phone = driver_phone;
    objbooking.vehicle.driver_phone = driver_first_name;
    objbooking.vehicle.driver_last_name = driver_last_name;          

    var json = JsonConvert.SerializeObject(objbooking);
    using (var response = await httpClient.PostAsync("{supplier_id}/availability?version=2", json))
    {
        string responseData = await response.Content.ReadAsStringAsync();
    }

}

使用 .Net 框架的 3.5 版本这是不可能的。 您的解决方案是:

  1. 不使用基于 async/await/Task 的方法或
  2. 将目标框架更改为更新的版本,例如 4.6 版本或
  3. 如果您的用例很简单,请使用WebClient而不是HttpClient ,如果不是(例如:操作标HttpWebRequest ),则使用HttpWebRequest对象:

下面是一个使用WebClient类的示例。 根据您设置HttpClient它可能无法正常工作:

using (WebClient client = new WebClient())
{
    string responseData = client.UploadString(host + "{supplier_id}/availability?version=2", json);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM