我已经完成了如何发布数据到MVC控制器/操作的研究,我遇到了一些麻烦。我要发布的数据(通过JavaScript),到我的MVC控制器,格式如下:发布复杂的数据到MVC控制器/操作
{
someString: "thisString",
myArray: ["string1", "string2"]
}
我的MVC行动具有以下特征:
[HttpPost]
public ActionResult someAction(FormCollection formValues);
如果我检查formValues的价值观,我会看到键/值对:
key: "someString"
value: "thisString"
key: "myArray[]"
value: [0]: "string1", [1]: "string2"
这一切看起来不错,直到我尝试:
TryUpdateModel(MyCustomModel);
someString /“thisString”绑定的键/值对完善,但数组(myArray)解析为null。
我的模型看起来是这样的:
public MyCustomModel
{
public string someString {get; set;}
public string [] myArray {get; set;}
}
这是帖子的样子(jQuery的):
$.post
(
"Controller/someAction",
{
someString: "thisString",
myArray: ["string1", "string2"],
},
function(data) { ...do something }
);
究竟我做错了什么?默认的MVC ModelBinder不支持绑定一个简单的字符串数组吗?
如果你对MVC 3,你应该尝试张贴的JSON从JS(包括stingify 'ing它) – RPM1984
大声笑试图说,无济于事,除非我做错了......但是,谢谢 –
没有probs,也许更新您的帖子与您使用的JS张贴到行动?所以我们可以看到流程的所有部分。 – RPM1984