从javascript访问mvc modelstate属性,名为“

时间:2016-03-26 20:26:52

标签: javascript asp.net-mvc

我的API使用带有modelstate属性的错误对象返回错误请求:

enter image description here

我正在使用我的javascript,例如:( service.saveRegistration是一个执行请求的函数)

 service.saveRegistration($scope.registration).then(function (response) {

       //success

    },
     //failure
     function (response) {
         //error response logic here             

         //goal is to update the error message to my client
         $scope.message = "Failed to register user because: " + <insert error message here here>;
     });
};

从我接下来的示例中可以看出如何从服务器端代码返回的模型状态对象中获取信息:

         var errors = [];
         for (var key in response.data.modelState) {
             console.log(response.data.modelState[key][0]);
             for (var i = 0; i < response.data.modelState[key].length; i++) {
                 errors.push(response.data.modelState[key][i]);
             }
         }
         $scope.message = "Failed to register user because: " + errors.join(' ');

但这对我没有任何回报。为简单起见,我只想访问 ModelState数组的0索引但是因为它名为“”而遇到了麻烦。我该如何访问它?

  

response.data.modelState。 “”[0]

1 个答案:

答案 0 :(得分:1)

这是区分大小写的。请注意,在响应中,ModelState属性以大写“M”开头。

尝试:

for (var key in response.data.ModelState)