Как использовать JsonTextReader дважды

Мне дан поток данных json, который содержит поле с именем «тип». Это поле типа описывает тип объекта, который необходимо создать во время выполнения. Похоже, я не могу использовать JsonTextReader дважды, и я не могу найти, чтобы сбросить чтение текста в начало.

using (var streamReader = new StreamReader(stream, Encoding))
using (var jsonTextReader = new JsonTextReader(streamReader))
{
    JToken token = JObject.Load(jsonTextReader);
    var type = (string) token.SelectToken("type");
    var modelType = Type.GetType("Project." + type + ", Project");

    // Fails here
    var obj = serializer.Deserialize(jsonTextReader, modelType);
}

Я получаю это сообщение об ошибке. Неожиданный токен при десериализации объекта: EndObject.

11
задан svick 6 March 2012 в 01:02
поделиться