Преобразование пользовательских типов в формат JSON. СПИК
Рассмотрим преобразование некоторых типов C# и JavaScript в формат JSON:
Тип C# | Тип JS | Значение C# | Значение JS | JSON |
int | Number | 27 | 27 | 27 |
double | Number | -32.4 | -32.4 | -32.4 |
string | String | “hello world” | “hello world” | “hello world” |
bool | Boolean | false | false | false |
object | Null | null | null | null |
object | Undefined | null | undefined | null |
DateTime | Date | DateTime.Now | new Date() | “/Date(1381924406000+0400)/” |
Рассмотрим аналогичные типы C# и JavaScript:
C# | JavaScript |
var test = new TestClass { SomeDateTime = DateTime.Now, { }}; |
var test = { SomeDateTime: "/Date(" + new Date().getTime() + ")/", SomeString: "hello", };{] |
Их представление в JSON будет выглядеть следующим образом:
{
"SomeDateTime": "/Date(1381927385358)/",
"SomeString": "hello",
"TestArray": [{
"SomeBool": true,
"SomeNumber": 0.26
}, {
"SomeBool": false,
"SomeNumber": -45
}]
}
Обратите внимание!
Форматы дат, читаемые и отправляемые сервером, различаются. Дата, принимаемая сервером, должна выглядеть следующим образом:
"SomeDateTime": "/Date(1381927385358)/"
Дата, отправляемая сервером, имеет такой вид:
"SomeDateTime": "\/Date(1381941785358+0400)\/"