【发布时间】:2014-08-04 12:59:38
【问题描述】:
您好,我是 JavaScript 和 MVC 的新手,我正在尝试将 List 和字符串传递给我的控制器。
JavaScript 看起来像:
var parms = {
globalList: globalList,
fieldName: fieldName
};
$.ajax({
//contentType: 'application/json; charset=utf-8',
type: "POST",
traditional: true,
url: "/Home/SaveField",
async: false,
data: parms,
dataType: "json",
success: function (data) {
console.log("uspjeh");
},
error: function (errorData) {
console.log("errors");
}
});
});
控制器看起来像:
public void SaveField(List<Point> globalList, String fieldName)
{
// filedName is correctly passed
// list is null
}
有人可以帮帮我吗?
点类:
public class Point
{
[Key]
public int PointId { get; set; }
public float GeoDuzina { get; set; }
public float GeoSirina { get; set; }
[ForeignKey("Data")]
public int DataId { get; set; }
public virtual Data Data { get; set; }
}
【问题讨论】:
-
你的 JS 代码中的 globalList 是从哪里得到的??
-
globalList 是来自 mapbox 的坐标列表,它们是正确的我检查它 {"globalList": [{"GeoDuzina":51.506760996586294,"GeoSirina":-0.06106463202740998},{"GeoDuzina":51.516269286402846 "GeoSirina":-0.056258113472722464},{"GeoDuzina":51.50419662363912,"GeoSirina":-0.044413478462956846}]}
-
显示
Point类 -
您刚刚在 cmets 中发布了什么对象?如果这应该是您的 javascript 代码中的
globalList变量,那么您的嵌套太多了,它看起来像这样:{globalList: { globalList: [..content..] } } -
@user3906678....只需将 float 更改为属性的 double 数据类型...
标签: c# javascript ajax asp.net-mvc