У меня есть эти классы:
public class EncuestaRespuesta
{
public string idCaso { get; set; }
public string tipoEncuesta { get; set; }
public string codMovimiento { get; set; }
public string motivoRetirada { get; set; }
public string duracion { get; set; }
public DateTime fechaHora { get; set; }
public string gestor { get; set; }
public List<RespuestasEncuesta> listRespuestasEncuestas { get; set;}
}
public class RespuestasEncuesta
{
public string pregunta { get; set; }
public string respuesta { get; set; }
public string numOrdenTrabajo { get; set; }
}
Используя JSON.NET,
// https://www.newtonsoft.com/json/help/html/NullValueHandlingIgnore.htm
var settings = new JsonSerializerSettings
{
NullValueHandling = NullValueHandling.Ignore
};
settings.Converters.Add(new Newtonsoft.Json.Converters.IsoDateTimeConverter());
var json = JsonConvert.SerializeObject(request, Formatting.Indented, settings);
Когда я вызываю REST API (HttpClient PostAsync
), я получаю сообщение об ошибке:
«Сервер совершил нарушение протокола. Раздел = ResponseStatusLine» Ошибка: ServerProtocolViolation
Я не знаю, почему. Моя строка JSON:
{
"idCaso": "5009E000007Hp94QAD",
"codMovimiento": "1",
"motivoRetirada": "2",
"duracion": "0",
"fechaHora": "2018-03-20T12:56:36.4841861Z",
"gestor": "GESTOR SALESFORCE",
"tipoEncuesta": "T3_1018_RM",
"listRespuestasEncuestas": [
{
"numOrdenTrabajo": "",
"pregunta": "",
"respuesta": ""
}
]
}
Я хотел бы, чтобы эта строка JSON была в порядке в моих тестах:
{
"idCaso": "5009E000007Hp94QAC",
"codMovimiento": "1",
"motivoRetirada": "1",
"duracion": "",
"fechaHora": "2018-02-06T14:40:43.511Z",
"gestor": "",
"tipoEncuesta": "T3_1018_RM",
"listRespuestasEncuestas": [
{
"numOrdenTrabajo": "",
"pregunta": "",
"respuesta": ""
}
]
}
Проблема. Поле dateTime:
"fechaHora": "2018-03-20T12:56:36.4841861Z",
неправильно
"fechaHora": "2018-02-06T14:40:43.511Z"
ОК
Какие-либо предложения?