您好我正以下面的方式从我的.net应用程序进行AJAX调用
$.ajax({
type: 'POST',
url: '@Url.Action("GetRouteUsingJobId", "Home")',
contentType: 'application/json; charset=utf-8',
dataType: "json",
data: JSON.stringify({ "jobid": jobid }),
success: function (result) {
var response = result.result;
var RouteArray = response.eSRIRouteResponse.features;
//RouteArray = response.eSRIRouteResponse.Features; //ERROR
},
error: function (request, status, error) {
alert('Error: Unable To Get Route details.');
}
});
当我尝试从eSRIRouteResponse访问功能时,如下所示,它给出了错误
var RouteArray = response.eSRIRouteResponse.Features; //ERROR
但是这个工作
var RouteArray = response.eSRIRouteResponse.features;
从我的MVC控制器中我回复如下
ESRIRouteResponse eSRIRouteResponse=Some Value;
return Json(new { eSRIRouteResponse },JsonRequestBehavior.AllowGet);
我的模型类包含eSRIRouteResponse,如下所示
public class ESRIRouteResponse
{
public Features Features{ get; set; }
}
我正在使用JQUERY 3.2.1
问题是什么,如何纠正?
答案 0 :(得分:0)
RouteArray = response.eSRIRouteResponse.features;
您基本上是在访问响应中的其他属性。响应包含已从操作发回的数据。您无法在响应中直接访问模型属性。
所以,
RouteArray = response.eSRIRouteResponse.Features;
以上不胜任何工作。
答案 1 :(得分:0)
您是否尝试删除dataType: "json"
并手动解析响应。
success: function (result) {
var response = JSON.parse(result);
RouteArray = response.eSRIRouteResponse.Features;
},