在ASP.NET MVC4 Web API 應用程式中,嘗試在POST 中將客戶資料作為JSON 傳遞時會出現一個常見問題請求,導致客戶屬性出現空值。為了解決這個問題,我們需要了解正確的方法。
最初,建議使用「Content-Type: application/x-www-form-urlencoded」作為預設內容類型。但是,不再推薦這種方法,因為它可能會導致綁定複雜物件時出現問題。
為了確保正確的物件綁定,我們應該使用「 application/json」作為內容類型。這指示伺服器我們正在發送 JSON 數據,使模型綁定器能夠正確地將 JSON 物件綁定到相應的類別物件。
程式碼片段:
var customer = {contact_name :"Scott",company_name:"HP"}; $.ajax({ type: "POST", data :JSON.stringify(customer), url: "api/Customer", contentType: "application/json" });
說明:在 Ajax 請求中將 contentType 屬性設為「application/json」。
解決進一步問題發布複雜對象如果模型類很複雜,包含嵌套對象,我們應該確保我們發送的JavaScript 對象與視圖模型類的結構匹配。然後模型綁定器也可以正確綁定巢狀物件。 部分綁定問題如果某些屬性未正確綁定,請確保使用 [FromBody] 修飾操作方法參數屬性。此屬性指示模型綁定器尋找請求正文中的資料。此外,避免使用較短形式的 $.post,因為它使用預設內容類型並可能導致部分綁定問題。 透過遵守這些準則,您可以有效地將 JSON 資料作為 POST 請求中的物件傳遞,確保發佈的資料正確綁定到 ASP.NET MVC4 Web API 應用程式中適當的類別物件。
以上是在 ASP.NET MVC4 Web API 應用程式中將 JSON 資料作為 POST 請求中的物件傳遞時,如何確保正確的物件綁定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!