2015-06-22 2 views
0

Учитывая классDeserializeObject только десериализации частично

public class ClassTest 
{ 
    public string A { get; set; } 
    public string B { get; set; } 
    public string C { get; set; } 
    public D_type D { get; set; } 
} 

Я зову

JsonConvert.DeserializeObject<ClassTest>(json);

Который прекрасно работает с D объекта класса D_type это правильно разбирает, как мне это нужно. Тем не менее, я не хочу JSON.net десериализовать D, я хочу сделать это вместо того, чтобы

public class ClassTest 
{ 
    public string A { get; set; } 
    public string B { get; set; } 
    public string C { get; set; } 
    public string D_json { get; set; } 
} 

Я хочу сохранить D как строку JSON и не десериализации его.

Я собираюсь использовать другой десериализатор сразу же, чтобы преобразовать его в нечто другое. Кажется бессмысленным десериализовать объект D_type, а затем сериализовать его обратно в json, только для десериализации его снова.

ответ

0

Кажется, я могу сделать

public class ClassTest 
{ 
    public string A { get; set; } 
    public string B { get; set; } 
    public string C { get; set; } 
    public dynamic D { get; set; } 
} 

, а затем просто использовать

var obj = JsonConvert.DeserializeObject<ClassTest>(json); 
var json = obj.D.ToString() 

, но я все еще интересно, если есть лучший способ, в частности, один, который возвращает реальное JSONObject или что-то я может добавлять свойства к

+0

Вы можете сделать 'D'' JObject', но я не уверен, что это помогает –

Смежные вопросы