【发布时间】:2013-11-29 02:08:38
【问题描述】:
我正在使用 MVC 应用程序,并且在使用从另一个类继承的类的对象发布到控制器时遇到了问题。对象的基本属性未正确映射。
我目前有以下类结构:
public class A
{
public DateTime Property1;
public DateTime Property2;
}
//Class B Inherits from A.
public class B : A
{
public int[] intArray;
}
当我在 JSON 中对 B 类对象进行 JQuery 发布时,它仅映射(或填充)int[] intArray 属性,并且似乎无法填充 A 类基本属性。
在我的 ajax 帖子中,这是我的 JSON.stringify 数据的样子。
[{"Property1": '10/21/2013', "Property2": '11/21/2013', "intArray": [1,2,3,4,5]}]
Jquery Ajax 帖子:
var dataObject = @(Html.Raw(new JavaScriptSerializer().Serialize(Model)));
dataObject= [{"Property1": '\/Date(0123131)\/', "Property2": '\/Date(0123131)\/', "intArray": [1,2,3,4,5]}];
dataObject= JSON.stringify(dataObject);
$.ajax(
{
url: '@Url.Action("GenerateExpensePeriod", "Expense")',
data: dataObject,
type: 'POST',
contentType: 'application/json',
success: function (results) {
return results;
},
error: function (error) {
alert('Error');
}
});
`
我的控制器方法签名是:
public ActionResult ActionName(ClassB data)
{ }
intArray 属性是唯一被填充的属性。如何填充 Property1 和 Property2?
谢谢。
【问题讨论】:
-
也添加你的 jquery & json 形成代码..
-
好的,让我编辑我的帖子。
标签: c# asp.net-mvc jquery