.net 4.0 - Json.net: Preventing OutOfMemoryErrors when handling large objects -


my question same this one, unfortunately answer doesn't work me.

i'm trying handle edge cases, 1 of case receive unusually large (e.g., 150 million character) json string server. i'm using memory optimization technique described in json.net docs, still outofmemoryerror in deserialization step.

what correct way handle large json objects json.net? i'd settle setting max length flag, i'm not sure how that.

here's code:

    dim serverresponsestream stream = 'gzipwrapperstream response server      using sr streamreader = new streamreader(serverresponsestream), _         reader jsonreader = new jsontextreader(sr)         dim serializer jsonserializer = new jsonserializer()          'out of memory exception here in deserialize         dim response = serializer.deserialize(reader)      end using 

edit: per this answer, have tried:

    dim = new jarray()     using sr streamreader = new streamreader(serverresponsestream), _             reader jsonreader = new jsontextreader(sr)         while reader.read()             if reader.tokentype = jsontoken.startobject                  'out of memory exception here                 dim j = jobject.load(reader)                  a.add(j)                                 end if         end while     end using 

this might work (depending on size of json you're deserilizing) :

serializer.maxjsonlength = int32.maxvalue; 

edit : bad if you're using javascriptserializer()


Comments

Popular posts from this blog

php - render data via PDO::FETCH_FUNC vs loop -

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

The canvas has been tainted by cross-origin data in chrome only -