我有一个 JavaScript 数组正在被传回 Controller
amount_array[]
它包含不同的命名键,例如
amount_array['start_date'] , amount_array['end_date']
在数组中添加更多类似的变量
有没有办法在 Controller 上用 C# 设置数组,以按名称调用数组的开始和结束日期?
或者我只需按数组中的位置进行调用?
感谢任何帮助。
谢谢
最佳答案
I have a javascript array
不,您没有 JavaScript 数组。在 JavaScript 中,数组必须具有基于整数 0 的索引。您拥有的是一个具有 2 个属性的 javascript 对象:start_date
和 end_date
。
因此,您定义一个 View 模型来匹配此结构:
public class MyViewModel
{
public DateTime Start_Date { get; set; }
public DateTime End_Date { get; set; }
}
然后是一个 Controller 操作来获取此 View 模型并对其进行一些处理:
[HttpPost]
public ActionResult SomeAction(MyViewModel model)
{
// use model.Start_Date and model.End_Date here
...
}
最后是一个 javascript 函数来调用此 Controller 操作(例如使用 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) {
}
});
关于c# - 在数组中使用命名键 C# MVC razor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12013505/