.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
Post a Comment