我是angularjs的新手(今天開始......),並且將從c#控制器傳遞給angularjs控制器的模型問題。將c#模型轉換爲角模型
看來,我得叫get方法在我的角度控制器,調用C#控制器從中我會得到JSON並將其加載到$ scope.people進一步操作:
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function ($scope, $http) {
$http({url: "/Home/GetPersons",method: "GET"
}).success(function (data) {
$scope.people = data;
}).error(function (error) {
$scope.error = "Failed to load";
});
});
</script>
這裏是我的控制器:
[HttpGet]
public JsonResult GetPersons()
{
using (HRMEntities db = new HRMEntities())
{
var EmployeeList = db.Employees.Where(e => e.EmployeeId >= 0).ToList();
return Json(EmployeeList, JsonRequestBehavior.AllowGet);
}
}
作爲響應,我得到錯誤代碼500; 請求中有什麼問題?這可以用更簡單的方式做出來嗎?可能使用我的模型被髮送到一個視圖從C#控制器@model List<Employee>
500意味着服務器端錯誤,所以你需要調試方法,看看有什麼不對 – Alex
我不能得到如何調試it..'EmployeeList'設置,它裏面有67元,下一步是已經返回,之後顯示錯誤。 – GeekyNuns
我最好的猜想是您的EmployeeList包含某種類型的循環引用,因此無法序列化它。像這樣: 'var myJson = Json(EmployeeList,JsonRequestBehavior.AllowGet); return myJson' 是否成功創建'myJson' var? – Alex