我需要在哪里获取已删除项目的数量,并获取未删除项目的更改集/集合。
我如何实现这一目标?
我可以使用LINQJS来做,但是想知道是否有更合适的方法。
var countryType = manager.metadataStore.getEntityType("Country");
var countries = manager.getEntities(countryType);
var deletedCount = Enumerable.From(countries)
.Where(function (x) {
return x.entityAspect.entityState == "Deleted"
}).Count();
self.totalRows(self.totalServerRows() - deletedCount);
var queryResult = Enumerable.From(countries)
.OrderBy(function(x){ x.Country_Code })
.Where(function (x) {
return x.entityAspect.entityState != "Deleted"
})
.Skip(self.pageIndex() * self.pageSize())
.Take(self.pageSize())
.ToArray();
self.list(queryResult);
答案 0 :(得分:1)
EntityManager.getEntities调用已重载(请参阅:http://www.breezejs.com/sites/all/apidocs/classes/EntityManager.html#method_getEntities),以便您可以简单地要求entityManager中具有特定类型或处于指定状态的实体。所以对于'删除,试试这个:
var deletedEntities = em.getEntities(null, [EntityState.Deleted]);
或者如果您只想要添加或修改的实体
var deletedEntities = em.getEntities(null, [EntityState.Added, EntityState.Modified]);
我希望这会有所帮助。