Odata Breeze js扩展和内联计数
我在一个项目中使用Breeze js 1.4.1版,我有以下查询:Odata Breeze js扩展和内联计数,odata,breeze,Odata,Breeze,我在一个项目中使用Breeze js 1.4.1版,我有以下查询: var query = breeze .EntityQuery.from("AnalyzeObjects") .expand("GatherTasks, GatherTasks.ObjectFactory") .where(predicate) .orderBy("Name")
var query = breeze
.EntityQuery.from("AnalyzeObjects")
.expand("GatherTasks, GatherTasks.ObjectFactory")
.where(predicate)
.orderBy("Name")
.using(manager)
.execute();
它工作正常,但由于我想添加服务器端分页,我添加了以下内容:
var query = breeze
.EntityQuery.from("AnalyzeObjects")
.expand("GatherTasks, GatherTasks.ObjectFactory")
.where(predicate)
.inlineCount()
.orderBy("Name")
.take(_take)
.skip(_skip)
.using(manager)
.execute();
问题是,查询运行正常,返回inlineCount属性,但expand子句停止工作。如果我运行第一个查询,“GatherTasks”导航属性返回ok,但设置了inlineCount属性则不会返回ok。
我正在使用在WCF数据服务中实现的OData端点。
有人知道这种行为的原因吗?是微风js上的虫子吗
提前谢谢 我无法重现这个问题 在我下面的测试中:
test("expand not working with paging", function () {
var manager = newEm();
var predicate = Predicate.create("orderID", "<", 10500);
stop();
var query = new breeze.EntityQuery()
.from("Orders")
.expand("orderDetails, orderDetails.product")
.where(predicate)
.inlineCount()
.orderBy("orderDate")
.take(2)
.skip(1)
.using(manager)
.execute()
.then(function (data) {
var localQuery = breeze.EntityQuery
.from('OrderDetails');
var orderDetails = manager.executeQueryLocally(localQuery);
ok(orderDetails.length > 0, "should not be empty");
var localQuery2 = breeze.EntityQuery
.from('Products');
var products = manager.executeQueryLocally(localQuery2);
ok(products.length > 0, "should not be empty");
}).fail(testFns.handleFail).fin(start);
});
test(“扩展不使用分页”,函数(){
var-manager=newEm();
var predicate=predicate.create(“orderID”,"我已经按照你说的做了,尝试查询本地缓存,但即使如此,它也没有加载我的导航属性!我尝试使用Northwind数据库创建一个模型,它成功了。我的模型有很多自引用,我认为breeze正在迷失这些属性。我将很快提供一个关于我的模型的示例,然后我们可以进一步了解我的模型现在,谢谢你的帮助!