2

我有一个 javascript 对象,obj它通过 $.post() 传递给 mvc 操作,如下所示:

var obj = {
    Items: [{ Text: "", Value: { Property1: "", Property2: "" },
            { Text: "", Value: { Property1: "", Property2: "" }]
};
$.post('MyAction', obj, function() {});

动作签名如下所示:

public ActionResult MyAction(FormCollection collection)
{
}

我需要能够从 构建一个对象FormCollection,但是我遇到了一个问题,其中键的格式为:

"Items[0][Text]"
"Items[0][Value][Property1]"
"Items[0][Value][Property2]"
"Items[1][Text]"
"Items[1][Value][Property1]"
"Items[1][Value][Property2]"

我想知道是否有一种干净的方法可以从给定的FormCollection. 我知道我可以更改操作方法签名以采用我感兴趣的对象类型,但这会带来它自己的问题。

4

1 回答 1

1

如果您可以更改 javascript 端以便发送 json 版本的数据,我认为您可以接受一个字符串并在控制器中自己进行 json 反序列化,或者做一个模型绑定器来为您完成。

于 2010-05-17T03:01:59.030 回答