0
我在MVC3中將ViewModel綁定到json時遇到了問題。我非常簡單的代碼如下...JsonValueProvider在ASP.NET MVC3中不工作
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<% using (Html.BeginForm("Save", "Home")) {%>
<p>
Cat
</p>
<button id="clickMe" type="submit">Click Me</button>
<% } %>
<script type="text/javascript">
$(function() {
$('form').submit(function() {
var cat = {
Age: 5,
Weight: 13.5,
Name: 'Fluffy'
};
$.ajax({
url: '/home/save',
type: 'post',
data: JSON.stringify(cat),
dataType: 'json',
contentType: 'application/json; charset=utf-8'
});
console.info(JSON.stringify(cat));
});
});
</script>
</asp:Content>
的console.info線印在Firebug的信息窗口,使腳本在正確的時間發射了。預期JSON也顯示在螢火...
Source
{"Age":5,"Weight":13.5,"Name":"Fluffy"}
然而,當下面的視圖模型進入下面的所有屬性都沒有設置的操作方法......
public class Cat
{
public int Age { get; set; }
public double Weight { get; set; }
public string Name { get; set; }
}
[HttpPost]
public ActionResult Save(Cat form)
{
return View();
}
我已經驗證JsonValueProviderFactory在應用程序啓動時在工廠中註冊。我敢肯定,我在這裏錯過了一些令人難以置信的簡單的東西,任何人都可以對此有所瞭解?
在此先感謝。
這就是它!我錯過了「返回假」;在我的js結尾。感謝關於從動作返回JSON的提示。 – 2011-03-27 14:36:57