2015年1月22日 星期四

AngularJS 搭配Web Api回傳問題

今天遇到的問題是使用angularjs抓取web api
在一開始都沒問題網路上很多範例如下
js部份
 
    $http.get('/url').success(function (data, status, headers, config) {
        $scope.datalists = data;
    })
    .error(function (data, status, headers, config) {       
        $scope.error = "Error!!";
    });
web api .cs部份 vs自動產生很快吧!!
 public IEnumerable Get()
{       
  return  db.Sys_Domain.AsEnumerable();       
}
但是其實這個table join了很多Table當被join的table裡開始有資料時就會有錯誤
找了許多方式修改了web api
      public HttpResponseMessage Get()
        {
            List data = new List();
            foreach (var item in db.Sys_Domain)
            {
                Sys_Domain Row = new Sys_Domain()
                {
                   //todo
                };
                data.Add(Row);
            }
            return Request.CreateResponse(HttpStatusCode.OK, data);
        }
就可以正常的回傳了剛學習,如有更好的方式再請大家多指教!!