【发布时间】:2017-06-05 23:22:41
【问题描述】:
我将使用 Angular js 1.3.13 删除我的 asp.net mvc 项目中的一条记录。
<tr ng-repeat="emp in employees track by $index">
<td>
<a href="#" class="btn btn-default btn-sm">
<i class="glyphicon glyphicon-edit"></i>
</a>
</td>
<td>
{{emp.EmployeeId}}
</td>
<td>
{{emp.EmployeeName}}
</td>
<td>
{{emp.Address}}
</td>
<td>
{{emp.EmailId}}
</td>
<td>
<a href="#"
ng-click="delFn($index)"
class="btn btn-default btn-sm">
<i class="glyphicon glyphicon-trash"></i>
</a>
</td>
</tr>
我的 controller.js 代码
app.controller("EmpCtrl", function ($scope, EmployeeService) {
GetAllEmployee();
function GetAllEmployee() {
var getAllEmployee = EmployeeService.getEmployee();
getAllEmployee.then(function (emp) {
$scope.employees = emp.data;
}, function () {
alert('Data not found');
});
}
$scope.delFn = function (index) {
var response = confirm('Delete this Employee?');
if (response) {
$scope.employees.splice(index, 1);
EmployeeService.deleteEmployee(index);
}
}
});
在我的 service.js 中,我有
app.service("EmployeeService", function ($http,id) {
this.getEmployee = function () {
return $http.get("/Employee/GetAllEmployee");
};
this.deleteEmployee = function () {
var url = "/Employee/DeleteEmployee/" + id;
$http.delete(url)
.success(function (result) {
alert("Delete Successfully");
})
.error(function () {
alert("Something wrong!");
})
.then(function () {
window.location = '#/';
})
}
});
在我的 asp.net 控制器中,我有删除方法
[HttpDelete]
public void DeleteEmployee(int id)
{
// blah
}
但是在 chrome 中调试时出现错误。
angular.min.js:102 错误:[$injector:unpr] http://errors.angularjs.org/1.3.13/$injector/unpr?p0=idProvider%20%3C-%20id%20%3C-%20EmployeeService
那你能告诉我哪里出了问题吗?
【问题讨论】:
-
你能检查一下 index.html 中是否有 service.js 路径吗?该错误通常表明您没有将文件路径放在脚本标记中
-
@OlegMarkoff,我在
_Layout.cshtml中有路径。所以它应该在那里。
标签: javascript asp.net angularjs