在 ASP.NET MVC 中自訂 JSON 序列化
在 ASP.NET MVC 中使用 JSON ActionResult 時,預設行為是將枚舉序列化為數值而不是其字串名稱。雖然 JSON.Net 應該可以解決這個問題,但它可能不是您應用程式中的預設序列化程式。
檢查 Web.config 設定
與一般看法相反,在 web.config 中設定預設 JSON 序列化程式並不適用於 ASP.NET MVC。事實上,ASP.NET MVC 4 仍然使用 JavaScriptSerializer 來處理 JSON 操作。
在 MVC4 實作 JSON.Net
要在 MVC4 中整合 JSON.Net,需要建立一個自訂的 JsonNetResult 類別。請參考以下文章以獲取指導:
將 JSON.Net 應用於控制器參數
要在模型綁定期間將 JSON.Net 應用於控制器操作參數,請建立您自己的 ValueProviderFactory 實作。請確保使用以下程式碼註冊您的實作:
<code class="language-csharp">ValueProviderFactories.Factories.Remove(ValueProviderFactories.Factories .OfType<JsonValueProviderFactory>().Single()); ValueProviderFactories.Factories.Add(new MyJsonValueProviderFactory());</code>
考慮使用內建的 JsonValueProviderFactory 或參考以下文章以了解更多資訊:
以上是如何在ASP.NET MVC中自定義JSON序列化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!