2013-06-22 5 views
2

Следующая JSON даетсяServiceStack.Text JSON Десериализация

{"pusher":{"fullName":"Me","email":"[email protected]","accesstoken":false},"repository":{"url":"https://ffff.com/Code/"},"commits":[{"id":"d83ee17aa40bc79b9f4dcdf58a099b424e08745b","revision":63,"branch":"default","tags":["tip"]}]} 

Теперь я хотел десериализации этот JSON в объект. Класс определяется как это:

public sealed class KilnCommitPayload 
    { 
     public string branch { get; set; } 

     public int revision { get; set; } 
    } 

и десериализация код IST:

var result = JsonSerializer.DeserializeFromString<KilnCommitPayload>(content); 

теперь я ожидал, что отрасль будет «по умолчанию» и пересмотр будет 63

Но оба proeprties были не задано. у вас есть какой-то намек, почему и что я должен изменить?

+1

Эти свойства находятся внутри массива commits. –

+0

о да. Вот и я этого не замечал. теперь это работает. благодаря –

ответ

2

Эти свойства находятся внутри массива commits. Ваш тип должен отражать ваши данные JSON. У вас должна быть такая модель.

public class Payload 
{ 
    public Pusher Pusher { get; set; } 
    public Repository { get; set; } 
    public IEnumerable<KilnCommitPayload> { get; set; } 
} 
Смежные вопросы