Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法将$expand与BreezeJS和WebAPi OData一起使用_Odata_Breeze - Fatal编程技术网

无法将$expand与BreezeJS和WebAPi OData一起使用

无法将$expand与BreezeJS和WebAPi OData一起使用,odata,breeze,Odata,Breeze,我正在使用新的VS2013,并创建了OData控制器,其中包括2个型号、商店和产品,作为我使用的KO、BreezeJS和DataJs的客户端 我看到expand不起作用,我已将此问题发送到codeplex站点中的microsoft poeple,他们告诉我,我的代码一切正常 my.vm = { stores: ko.observableArray([]), load: function () { var serverAddress = "

我正在使用新的VS2013,并创建了OData控制器,其中包括2个型号、商店和产品,作为我使用的KO、BreezeJS和DataJs的客户端 我看到expand不起作用,我已将此问题发送到codeplex站点中的microsoft poeple,他们告诉我,我的代码一切正常

 my.vm = {
        stores: ko.observableArray([]),
        load: function () {
            var serverAddress = "/odata";
            breeze.config.initializeAdapterInstances({ dataService: "OData" });
            var manager = new breeze.EntityManager(serverAddress);


            var query = breeze.EntityQuery.from("Store").expand("Products");
            manager.executeQuery(query, function (data) {
                var results = data.results;
                $.each(data.results, function (i, c) {
                    my.vm.stores.push(c);
                });
            });
        }
    };
添加请求/响应

http://localhost:16894/odata/Store?$expand=Products

{
元数据:/odata/$metadataStore,值:[ { odata.type:WebApplication1.Models.Store,odata.id:/odata/Store1,Products@odata.navigationLinkUrl:/odata/Store1/产品,产品:[ { odata.type:WebApplication1.Models.Product,odata.id:/odata/Product1,id:1,名称:1 },{ odata.type:WebApplication1.Models.Product,odata.id:/odata/Product2,id:2,Name:2 } ],ID:1,姓名:1 },{ odata.type:WebApplication1.Models.Store,odata.id:/odata/Store2,Products@odata.navigationLinkUrl:/odata/Store2/产品,产品:[ { odata.type:WebApplication1.Models.Product,odata.id:/odata/Product2,id:2,名称:1 },{ odata.type:WebApplication1.Models.Product,odata.id:/odata/Product3,id:3,名称:2 } ],ID:2,姓名:1 } ]
}

只有来自q-[q]未处理拒绝原因的警告应为空:[ReferenceError]您是如何构造OData控制器的,通过WCF数据服务或使用MS的OData model builder?MS OData model builder向您提供Fiddler之类的东西,以提供发送到服务器的实际请求和收到的响应示例。这将使调试变得更容易。除非您每晚使用MS OData model builder中的一个版本,否则这不太可能工作。发布的MS OData ModelBuilder不支持Breeze需要的外键定义。另一张海报指出,这已在其中一个夜间版本中修复,但我们尚未确认。