我已经陷入了这一点,无法继续。
我正在使用 breeze 与淘汰我只有一个实体管理器,但是每个查询仍然可以调用元数据,我们可以减少元数据的调用吗?
答案 0 :(得分:1)
是的,你可以。你的第一个选择是调用EntityManager方法fetchMetadata(),它返回Promise,当它解析时,EntityManager不再查询元数据,所以你需要这样的东西:
var _manager=new breeze.EntityManager("/breeze/<controller>");
_manager.fetchMetadata().then(function() {
<your queries here>
});
此外,您可以通过_manager.metadataStore.exportMetadata()将此管理器中的元数据导出到某个变量,并将其导入所有新管理器。
但还有另一种方法,即以更加同步的方式执行此操作,如果没有fetchMetadata承诺等待,您可以在服务器上生成包含元数据的脚本,然后将其加载到您的应用程序,然后将此元数据导入所有管理器。 Here is the link