Słyszałem, że Json.NET jest szybszy niż DataContractJsonSerializer i chciałem spróbować ...
Ale nie mogłem znaleźć żadnych metod w JsonConvert, które pobierają strumień, a nie ciąg.
Na przykład do deserializacji pliku zawierającego JSON na WinPhone używam następującego kodu, aby wczytać zawartość pliku do ciągu, a następnie deserializować do formatu JSON. Wydaje się, że w moich (bardzo ad-hoc) testach jest około 4 razy wolniejsze niż przy użyciu DataContractJsonSerializer do deserializacji bezpośrednio ze strumienia ...
// DCJS
DataContractJsonSerializer dc = new DataContractJsonSerializer(typeof(Constants));
Constants constants = (Constants)dc.ReadObject(stream);
// JSON.NET
string json = new StreamReader(stream).ReadToEnd();
Constants constants = JsonConvert.DeserializeObject<Constants>(json);
Czy robię to źle?