角度承诺返回__proto__

时间:2015-08-11 17:52:58

标签: javascript asp.net-mvc angularjs

我有一个使用angular的asp.net-mvc应用程序。我有一个get方法,从服务器返回一些数据。我返回的是Tuple,其中包含状态消息和第二条数据,这些数据是错误消息或实际数据。例如:

return Json(new Tuple<string, string>("error", "bad request"));
//or 
return Json(new Tuple<string, MyData>("success", new MyData());

这工作正常,我做了以下几点:

$http.get(url).then(
            function (result) {
                return result.data;
            },
            function (result) {
                $q.reject(result.data);
            }

此处,result.data.Item1是我Tuple

的第一项

但是,我将我的返回类型从Tuple更改为我创建的新自定义类型,如下所示:

public class ServerResponse <T1, T2, T3>
    {
        T1 status { get; set; }
        T2 message { get; set; }
        T3 data { get; set; }
        public ServerResponse(T1 status, T2 message, T3 data)
        {
            this.status = status;
            this.message = message;
            this.data = data;
        }
    }

但现在我这样做了:

result.data.status

我没有得到预期的结果,因为result.data正在返回这样的内容:

__proto__ : Object

我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

环顾四周并与 Observable<Integer> o1 = getSomeInts(); Observable<Long> o2 = getSomeOtherLongs(); o1.forEach(it -> sendSomeEvent(it)); // doesn't have to be forEach o2.forEach(it -> sendSomeOtherEvent(it)); // block until o1 and o2 are complete 课程进行比较后,我发现我的Tuple课程属性未标记为ServerResponse,因此无法找到它们。制作public之后,问题就消失了