如果之前有人问过,请提前抱歉,但我无法找到我要找的内容。
我有一个带有Angular.JS
的ASP.NET MVC应用程序我在一个页面上有一个正常的资源列表,当我单击一个Action Link时,我想显示一个单独的View,它调用带有id的api控制器来填充该页面。简单吧?
我在第一页上的链接定义如下:
<a data-ng-href="@Url.Action("EditResource", "Home")/{{items.Resource.ResourceId}}">{{items.Resource.ResourceId}}</a>
Home控制器是一个简单的控制器。
My View从这些Angular指令开始:
<div ng-app="productSkillsApp" id="body">
<div ng-controller="editResourceCtrl">
然后在我的javascript中我有这个:
app.controller('editResourceCtrl', function ($scope, $http, SkillsService) {
$scope.resourceData = null;
// Fetching records from the factory
SkillsService.GetAllProductSkills().then(function (d) {
$scope.resourceData = d.data; // Success
}, function () {
alert('Error Occured !!!'); // Failed
});
});
// Dependency injection
app.factory('SkillsService', function ($http) {
var fac = {};
fac.GetAllRecords = function () {
return $http.get('api/Skills/GetAllSkills');
}
fac.GetAllProductSkills = function () {
return $http.get('api/Skills/GetAllResourceProductSkills');
}
return fac;
});
这与第一页调用的调用相同,但在此处失败。
所以我的其他问题是: 1)Controller可以调用ApiController吗? 2)如何将id传递给javascript函数调用? 3)我还缺少什么?你不知道自己不知道的东西!