2015-05-04 133 views
-2

正在獲取statuss 500錯誤。 當我點擊getcustomer按鈕'Getcustomers'方法被稱爲哪些retuns json。在將SqlDataReader序列化爲Json之後獲取500狀態

腳本:

<script> 
    var MyApp = angular.module("MyApp", []); 
    MyApp.controller("ctrl", function ($scope, $http) { 
     $scope.helloAngular = "hello"; 
     $scope.GetCustomers = function() { 
      debugger; 
      $http.get("/Home/Getcustomers") 
       .success(function (data) { 
        $scope.customerDetails = data; 
       }). 
       error(function (data, status, thrownError) { 
        //alert(status); 
        //alert(data.responseText); 
        alert(thrownError); 
       }); 
     } 
    }); 

</script> 

服務器端代碼: 我從這個函數得到JSON數據:

public ActionResult Getcustomers() 
     { 
      string query = "select top 10 * from Customers "; 
      ArrayList custArray = new ArrayList(); 
      SqlCommand cmd = new SqlCommand(query, sqlcon); 
      sqlcon.Open(); 
      var reader = cmd.ExecuteReader(); 
      while (reader.Read()) 
      { 
       custArray.Add(new 
        { 
         Name = reader["ContactName"], 
         City = reader["City"], 
         PostalCode = reader["PostalCode"], 
         Country = reader["Country"], 
         Phone = reader["Phone"], 
        }); 

      } 
      var result= JsonConvert.SerializeObject(custArray); 
      sqlcon.Close(); 
      return Json(result); 

     } 

我有搜索,但不能讓我在哪裏去wrong.Plz幫我。

+0

500是一個錯誤至極來自您的服務器。服務器端的日誌是什麼? –

+0

@Apédémak當我調試它給我的JSON數據,但沒有得到爲什麼它通過500狀態 –

+0

好500是「內部服務器錯誤」。這是關於服務器的。當你說你的JSON很好時,你的代碼的一部分是什麼?在你的var結果? –

回答

0

是的,終於得到了我想念的東西。 當狀態500是服務器error.It是存在的,因爲看完之後SqlDataReader的讀者沒有關閉 (我真的做出愚蠢的錯誤)

public ActionResult Getcustomers() 
     { 
      string query = "select top 10 * from Customers "; 
      ArrayList custArray = new ArrayList(); 
      SqlCommand cmd = new SqlCommand(query, sqlcon); 
      sqlcon.Open(); 
      var reader = cmd.ExecuteReader(); 
      while (reader.Read()) 
      { 
       custArray.Add(new 
        { 
         Name = reader["ContactName"], 
         City = reader["City"], 
         PostalCode = reader["PostalCode"], 
         Country = reader["Country"], 
         Phone = reader["Phone"], 
        }); 

      } 
      //Clean sqldatareader here; 
      reader.Close(); 
      reader.Dispose(); 
      var result= JsonConvert.SerializeObject(custArray); 
      sqlcon.Close(); 
      return Json(result); 

     }