本文件已封存並已停止維護。

JavaScriptSerializer.Deserialize<T> 方法

更新:2007 年 11 月

將指定的 JSON 字串轉換成 T 型別的物件。

命名空間:  System.Web.Script.Serialization
組件:  System.Web.Extensions (在 System.Web.Extensions.dll 中)

public T Deserialize<T>(
	string input
)

J# 支援使用泛型 API,但不支援新 API 的宣告。
JScript 不支援泛型型別或方法。

型別參數

T

產生的物件型別。

參數

input
型別:System.String

要還原序列化的 JSON 字串。

傳回值

型別:T

還原序列化的物件。

例外狀況條件
ArgumentException

input 長度超過 MaxJsonLength 的值。

-或-

已超出 RecursionLimit 所定義的遞迴限制。

-或-

input 包含非預期的字元順序。

-或-

input 為字典型別,而且發生非字串關鍵值。

-或-

input 包含的成員定義未在 T 型別上提供。

ArgumentNullException

inputnull

InvalidOperationException

input 包含表示自訂型別的 “__type” 屬性,但與序列化程式相關聯的型別解析程式找不到對應的 Managed 型別。

-或-

input 包含表示自訂型別的 “__type” 屬性,但還原序列化對應 JSON 字串的結果無法指派給預期的目標型別。

-或-

input 包含 “__type” 屬性,表示 Object 或不可執行個體化的型別 (例如,抽象型別或介面)。

-或-

嘗試將 JSON 陣列轉換成陣列式的 Managed 型別,但是不支援使用該型別做為 JSON 還原序列化目標。

-或-

無法將 input 轉換成 T

Deserialize<T> 方法相當於先使用 DeserializeObject 方法取得物件圖形,再嘗試將結果轉換 (Cast) 成 T 型別。

在還原序列化期間,會參考序列化程式目前的型別解析程式,它會判斷轉換陣列和字典型別中設為巢狀的項目時,所使用的 Managed 型別。結果,還原序列化程序會逐一查看 input 的所有巢狀項目。如需型別解析程式的詳細資訊,請參閱 JavaScriptTypeResolver 類別。

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求

.NET Framework

支援版本:3.5
顯示: