0

我有一个 javascript 数组被传回控制器

amount_array[]

它包含不同的命名键,例如

amount_array['start_date'] , amount_array['end_date']

在数组中有更多类似的变量

有没有办法在控制器上的 C# 中设置一个数组,以按名称从数组中调用开始和结束日期?

还是我只需要按数组中的位置调用?

任何帮助表示赞赏。

谢谢

4

1 回答 1

3

我有一个 javascript 数组

不,您没有 javascript 数组。在 javascript 数组中必须有基于整数 0 的索引。您拥有的是一个具有 2 个属性的 javascript 对象:start_dateend_date.

所以你定义一个视图模型来匹配这个结构:

public class MyViewModel
{
    public DateTime Start_Date { get; set; }
    public DateTime End_Date { get; set; }
}

然后是一个控制器操作来获取这个视图模型并对其进行一些处理:

[HttpPost]
public ActionResult SomeAction(MyViewModel model)
{
    // use model.Start_Date and model.End_Date here
    ...
}

最后是调用此控制器操作的 javascript 函数(例如使用 AJAX):

var amount_array = {
    start_date: new Date(2012, 8, 1).toUTCString(),
    end_date: new Date(2012, 8, 31).toUTCString()
};
$.ajax({
    url: '@Url.Action("SomeAction")',
    type: 'POST',
    data: amount_array,
    success: function(result) {

    }
});
于 2012-08-17T21:40:39.153 回答