Breeze.js getEntities不返回任何实体

问题描述 投票:0回答:1

使用Breeze.js加上Asp.net Web Api(使用Entity Framework 6 Code First),我无法在调用executeQuery(query)后获取实体。更具体地说,这是我在javascript中的调用:

       entityManager.executeQuery(query)
           .then(function(data){
                 alert(data.results.length); // length > 0 --> has data !!
                 alert(entityManager.getEntities().length); // == 0 has no data WHY?!!
       }); 

虽然executeQuery(查询)确实命中了我在服务器上的api控制器并将数据返回给客户端,因为data.results.length> 0,看起来数据没有被缓存,因为entityManager.getEntities()。length == 0.怎么会这样呢如果没有缓存数据,我会跟踪更改吗?我错过了什么吗?在谷歌搜索后我发现这篇文章http://forum.ideablade.com/forum_posts.asp?TID=3739&title=entity-manager-cache-not-working,据说简单地说,Breeze要求模型和dbcontext在同一名称空间。这是问题吗?因为我无法更改我的命名空间(dbcontext和api控制器来自外部库我没有控制悬停)在这种情况下可以使用哪些解决方法?

javascript asp.net entity-framework asp.net-web-api breeze
1个回答
0
投票

最可能的原因是服务器返回的对象不是实体数据...至少不是从Breeze客户端的角度来看。

也许您可以向我们展示您的查询。

查看Breeze文档中的"Query Result Debugging" topic

© www.soinside.com 2019 - 2024. All rights reserved.