JavaScriptSerializer.DeserializeObject Method (String)


Converts the specified JSON string to an object graph.

Namespace:   System.Web.Script.Serialization
Assembly:  System.Web.Extensions (in System.Web.Extensions.dll)

public object DeserializeObject(
	string input


Type: System.String

The JSON string to be deserialized.

Return Value

Type: System.Object

The deserialized object.

Exception Condition

input is null.


The input length exceeds the value of MaxJsonLength.


The recursion limit defined by RecursionLimit was exceeded.


input contains an unexpected character sequence.


input is a dictionary type and a non-string key value was encountered.


input includes member definitions that are not available on the target type.


input contains a "__type" property that indicates a custom type, but the type resolver that is currently associated with the serializer cannot find a corresponding managed type.


input contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type.


input contains a "__type" property that indicates either Object or a non-instantiable type (for example, an abstract type or an interface).


An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target.


It is not possible to convert input to the target type.

This deserialization method does not try to cast the root of the object graph to a specific type, as with the Deserialize<T> method.

.NET Framework
Available since 3.5
Return to top