Передайте объект JSON со свойством TimeSpan в C# WebAPI.C#

Место общения программистов C#
Ответить
Anonymous
 Передайте объект JSON со свойством TimeSpan в C# WebAPI.

Сообщение Anonymous »

У меня есть WebAPI (написанный на C#), метод POST, принимающий сложный объект со свойством System.TimeSpan с именем TriggerDelay, и приложение React Native, из которого я передаю этот объект в формате JSON.
Однако это свойство TimeSpan не сериализуется должным образом, и я продолжаю получать значение 00:00:00 на стороне API.
Я пытаюсь вот так:
"triggerDelay":{
"hours": "30",
"minutes": "10",
"seconds": "0"
},

ИЛИ вот так:
"triggerDelay": "30:10:00"

Но всё равно не повезло... В API всегда 00:00:00.
Буду признателен за любую помощь!
Но все равно не повезло... В API всегда 00:00:00.
Буду признателен за любую помощь!
Но всё равно не повезло... В API всегда 00:00:00.
Буду признателен за любую помощь!
p>
UPD Вот моя модель:
public class Alarm
{
public Guid Id { get; set; } = Guid.NewGuid();
[...other properties...]
public TimeSpan TriggerDelay {get; set;}
}

Мой метод WebAPI:
public async Task Publish([FromBody] Alarm alarm) {}

А вот мой необработанный объект JSON, установленный в теле запроса в Postman:
{
"id": "d17ef748-f378-4728-c6c2-9dfab1efce5b",
[...other properties...]
"triggerDelay":{
"hours": "30",
"minutes": "10",
"seconds": "0"
}
}


Подробнее здесь: https://stackoverflow.com/questions/635 ... arp-webapi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»