Breeze 显式检索metdataStore

Breeze 显式检索metdataStore,breeze,Breeze,我有一个视图模型,它将始终创建一个新实体(Score);不需要等待或查询存储库就可以知道这一点 我(当前)希望在页面加载时创建新实体,并使用它填充(KnockoutJS)视图模型 我相信实体管理器懒散地填充元数据,并通过纯粹为了强制填充元数据而进行不必要的查询来欺骗我想要的行为。API文档不包括以下内容: 问题 是否有一种方法可以强制管理器填充元数据而不发出冗余查询 以下是伪造代码,以显示其意图: manager.executeQuery(redundantQuery).then(functi

我有一个视图模型,它将始终创建一个新实体(Score);不需要等待或查询存储库就可以知道这一点

我(当前)希望在页面加载时创建新实体,并使用它填充(KnockoutJS)视图模型

我相信实体管理器懒散地填充元数据,并通过纯粹为了强制填充元数据而进行不必要的查询来欺骗我想要的行为。API文档不包括以下内容:

问题 是否有一种方法可以强制管理器填充元数据而不发出冗余查询

以下是伪造代码,以显示其意图:

manager.executeQuery(redundantQuery).then(function(data) {
  var viewScore = manager.metadataStore.getEntityType("Score").createEntity();
  viewScore.ID(breeze.core.getUuid());
  viewScore.Value(57);
  ko.applyBindings(viewScore, $ViewScore);
}).fail(function(e){
  ...
})
我很乐意:

manager.metadataStore.then(function() {

})...

好的,吸取的教训。。。。先试试再问

这实际上是有效的:

manager.metadataStore.fetchMetadata(manager.dataService).then(function () {
  var viewScore = manager.metadataStore.getEntityType("Score").createEntity();
  viewScore.ID(breeze.core.getUuid());
  viewScore.Value(57);
  ko.applyBindings(viewScore, $ViewScore);
}).fail(function (e) {
  ...
});

我唯一剩下的问题是为什么必须通过manager.dataService?

好的,吸取的教训。。。。先试试再问

这实际上是有效的:

manager.metadataStore.fetchMetadata(manager.dataService).then(function () {
  var viewScore = manager.metadataStore.getEntityType("Score").createEntity();
  viewScore.ID(breeze.core.getUuid());
  viewScore.Value(57);
  ko.applyBindings(viewScore, $ViewScore);
}).fail(function (e) {
  ...
});

我唯一剩下的问题是,为什么需要传递manager.dataService?

单个元数据存储可以存储多个数据服务的元数据。dataService只是EntityManager的“默认”数据服务,可能还有其他的

单个元数据存储可以存储多个数据服务的元数据。dataService只是EntityManager的“默认”数据服务,可能还有其他的