使用executeQueryLocally而没有服务器元数据的问题

时间:2013-02-08 00:50:17

标签: breeze

我没有使用EF,因此在没有使用服务器端元数据的情况下,已经跟随NoDb示例从WebApi成功加载数据。在初始加载之后,我希望在用户与页面交互时在EntityManager中使用本地数据缓存。问题是当我调用executeQueryLocally时,缓存的数据集为空。我逐步完成了代码,看看为什么没有将数据保存到缓存中,并且存在两个问题:

  1. 在_getEntityType中,metadataStore.isEmpty()返回true。
  2. 在_getEntityType中,metadataStore._getEntityTypeNameForResourceName没有返回任何内容
  3. 为了解决这个问题,我在我的代码中添加了对metadataStore.addDataService和metadataStore._setEntityTypeForResourceName的调用。添加这些后,缓存已正确保存并且executeQueryLocally正常工作。我认为这不是让它发挥作用的预期方式......还有别的我做错了吗?或者这是一个可以修复的错误?

1 个答案:

答案 0 :(得分:0)

很抱歉花了这么长时间才回到这个。

我们刚刚在breeze v.1.1.3中将metadataStore.setEntityTypeForResourceName设为public。 (我们重命名了删除第一个'_“的方法。

否则,你做的是正确的。接得好。