Работа с библиотекой RestSharp
С толкнулся с проблемой что когда выполняешь метод
private async Task<MagentoRestApiResponse<T>> ExecuteAsync<T>(IRestRequest request, bool isSecondTry = false) where T : new()
{
var response = await Client.ExecuteAsync<T>(request);
if (response.ContentType.ToUpperInvariant().Contains("APPLICATION/JSON"))
{
return await HandleResponseAsync(response, request, isSecondTry);
}
var errors = new List<MagentoError>
{
new MagentoError
{
Message = "Ответ не содержит json и не может быть десериализован."
}
};
var requestBodyParameter = request.Parameters
.FirstOrDefault(x => x.Type == ParameterType.RequestBody);
var requestContent = requestBodyParameter == null ?
string.Empty : requestBodyParameter.Value == null ?
string.Empty : requestBodyParameter.Value.ToString();
return new MagentoRestApiResponse<T>
{
Errors = errors,
RequestUrl = Client.BuildUri(request),
ErrorString = response.Content,
RequestContent = requestContent
};
}
Получаю json и строго типизированный объект и они разные, в том плане что json полный, а мой объект нет.
Есть OrderItem в нем свойство:
[JsonProperty("items")]
public IList<NestedItem> NestedItems { get; set; }
оно должно быть отличное от null, переименовываю свойство на:
[JsonProperty("items")]
public IList<NestedItem> Items { get; set; }
и все работает. Не понятно в чем проблема!
NestedItem это структура.