Получение неверного запроса на мой Json, если я использую RestSharp, однако он хорошо работает с httpClient.Ответ от API не распознается, и это неверный запрос.Первая строка SerialNumber равна NULL в отладчике.Может кто-нибудь помочь исправить кодировку.
RestClient client = new RestSharp.RestClient(BaseUrl);
RestRequest request = new RestSharp.RestRequest("/api/mobileservice/commissionv2", RestSharp.Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddHeader("Content-Type", "application/json; charset = utf - 8");
var strJSONContent = new Dictionary<string, string>
{
{"NexoController.SerialNumber", "AJUTESTDEVICE" },
{"NexoController.FirmwareVersion", "80" },
{"Retailer.Name", "TestShop" },
{"Retailer.StoreId", "1" },
{"Retailer.HasCompetitorCoolers", "true" },
{"Retailer.CompetitorCoolerCount", "D82" },
{"Cooler.CoolerManufacturerId", "0"},
{"Cooler.ModelId", "1"},
{"Cooler.ShelfCount", "5"},
{"Cooler.Serial", "string"},
{"Cooler.PositionId", "0"},
{"Cooler.CustomerAssetId", "AJUTESTCUSTOMERASSETID"},
{"Cooler.IsLocatedNextToCompetitorCooler", "true"},
{"Cooler.ChannelId", "0"},
{"Cooler.CoolerOtherManufacturerName", "string"},
{"Cooler.CoolerOtherModelName", "string"},
{"Beacon.Major", "210" },
{"Beacon.Minor", "240" },
{"PeriodTimeUTC", "string"},
{"UtcOffset", "0"},
{"Meta.BrandId", "1"},
{"Meta.AccountNameId", "1"},
{"DevicePosition.SerialNumber", "string"},
{"DevicePosition.DeviceId", deviceId},
{"DevicePosition.FirmwareVersion", "string"},
{"DevicePosition.MDeviceUUID", "1"},
{"DevicePosition.Position.Lat", "1"},
{"DevicePosition.Position.Long", "1"},
{"DevicePosition.Accuracy", "1"},
{"DevicePosition.RSSI", "1"},
{"DevicePosition.DetectionTypeId", "string" },
{"DevicePosition.LocationAgeSeconds","0" },
{"DevicePosition.PeriodTimeUTC","string" },
{"DevicePosition.UtcOffset","0" },
{"DevicePosition.UploadedBy","Aju" }
};
//add parameters and token to request
request.Parameters.Clear();
request.AddParameter("application/json", JsonConvert.SerializeObject(strJSONContent), ParameterType.RequestBody);
request.AddParameter("Authorization", "Bearer " + authToken, ParameterType.HttpHeader);
//make the API request and get a response
var response = client.Execute(request);