H chaps, Я пытаюсь использовать ServiceStack.Text для разбора JSON (он, кажется, работает лучше, чем JSON.Net в различных тестах, которые я видел). Но я не получаю ожидаемых результатов. Класс Я пытаюсь десериализация выглядит следующим образом:ServiceStack.Text JSON синтаксический анализ .Net 4.0
[DataContract]
public class RpcRequest<T>
{
[JsonProperty("id")]
[DataMember(Name="id")]
public String Id;
[JsonProperty("method")]
[DataMember(Name="method")]
public String Method;
[JsonProperty("params")]
[DataMember(Name="params")]
public T Params;
[JsonIgnore]
[IgnoreDataMember]
public Policy Policy;
}
И я вызов анализатора как этого
public static class Json
{
public static T Deserialize<T>(string serialized)
{
return TypeSerializer.DeserializeFromString<T>(serialized);
}
}
...
RpcRequest<Params> myRequeset = Json.Deserialize(packet);
Однако я получаю экземпляр обратно из этого вызова, который не имеет ни одного из значений, установленных , т.е. Id
, Method
и Params
- все null. Я правильно использую этот API?
Вы совершенно правы, мне нужен JsonSerializer. TypeSerializer не производит действительный JSON. Однако это было не совсем причиной моих проблем – Ceilingfish