MVC4 で json をオブジェクトにデシリアライズしようとすると問題が発生します。
ビューモデルがあります:
public class TestViewModel
{
public string Code { get; set; }
}
ビューでモデルを取得し、Json.net を使用してオブジェクトをシリアル化します
var Vm = function(data) {
var self = this;
ko.mapping.fromJS(data, {}, self);
self.GetResults = function() {
$.ajax({
type: "POST",
url: '@Url.Action("Action", "Controller")',
data: ko.mapping.toJSON(self),
success: function(data) {
alert('OK');
}
});
};
};
var viewModel = new Vm(@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model)));
ko.applyBindings(viewModel);
私の問題は、コントローラーで GetResults アクションを呼び出すと、すべてのプロパティが null になることです。
私のJsonは:
{"Code":"TestCode"}
私は MVC3 プロジェクトで同じ構造を持っており、正常に動作します。MVC4 で何か不足していますか?
乾杯!