我想使用breeze js和web api 2删除数据库上的记录 这是我的代码:
cv
我使用materialAdmin
.controller('schProgCtrl', function ($scope, breeze, $filter, $sce, ngTableParams, serviceUrl, schServiceName) {
var serviceName = serviceUrl + schServiceName; // route to the Web Api controller
var manager = new breeze.EntityManager(serviceName);
$scope.getAll = function (query) {
var eq = breeze.EntityQuery;
var query = new eq(query)
return manager.executeQuery(query);
};
$scope.update = function (w) {
if(!w.Id){
var type = manager.metadataStore.getEntityType('MD_ScholarshipProgram');
var newItem = type.createEntity(w);
manager.addEntity(newItem);
}
if (manager.hasChanges()) {
manager.saveChanges()
.then(function (res) {
console.log(res);
})
.catch(function (err) {
alerts('Oops!!! Data tidak ter-update ke server.');
console.log(err);
})
.finally(function () {
w.$edit = false;
});
} else {
alert("Nothing to save");
w.$edit = false;
}
};
$scope.addNew = function() {
$scope.datatable.data.unshift({
Name :'',
Code : '',
$edit : true
});
};
$scope.delete = function (w) {
console.log(w.entityAspect);
w.entityAspect.setDeleted();
manager.saveChanges();
};
$scope.datatable = new ngTableParams({
page: 1, // show first page
count: 10
},
{
getData: function ($defer, params) {
$scope.getAll({
from: "Program",
orderBy : ['Code asc'],
skip : ((params.page() -1) * params.count()),
take : params.count(),
inlineCount:true
})
.then(function (res) {
console.log(res);
params.total(res.inlineCount);
var data = res.results;
$defer.resolve(data);
});
}
});
});
。
但我收到一个错误:
ngTable
可能是我删除的方式有误,如何使用breeze js正确删除记录?