將 JSON.Net 設定為 ASP.NET MVC 中的預設 JSON 序列化器
ASP.NET MVC 4 的預設 JSON 序列化器是 JavaScriptSerializer
。 當您喜歡 JSON.Net 的功能時,這可能會導致問題,例如枚舉被序列化為數字而不是字串。
解決方案:手動設定
要使用 JSON.Net 作為預設序列化器,需要手動設定。 這通常涉及建立自訂 JsonNetResult
類別。 詳細說明可以在這些有用的資源中找到:
與 JSON.Net 的模型綁定
如果您還需要 JSON.Net 進行模型綁定(處理控制器操作參數中的 JSON 資料),則需要自訂 ValueProviderFactory
。 註冊如下:
<code class="language-csharp">ValueProviderFactories.Factories.Remove(ValueProviderFactories.Factories.OfType<JsonValueProviderFactory>().Single()); ValueProviderFactories.Factories.Add(new MyJsonValueProviderFactory());</code>
您可以將自訂 MyJsonValueProviderFactory
基於內建 JsonValueProviderFactory
或參考 ASP.NET MVC 3 – 使用 Json.Net 改進的 JsonValueProviderFactory 等範例。 這可確保整個應用程式中 JSON 處理的一致性。
以上是如何使JSON.NET在ASP.NET MVC中成為默認的JSON序列化器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!