【问题标题】:How to get metadata from MongoDB with Breeze如何使用 Breeze 从 MongoDB 获取元数据
【发布时间】:2014-10-23 03:01:15
【问题描述】:

目前我有一个使用 Breeze 的 WebAPI 和 EF 项目,它可以很好地与元数据东西一起在服务器上进行验证,但是当迁移到 NodeJS 和 MongoDB 时,我因为尝试从 MongoDB 获取元数据而陷入困境。我检查了 zza BMEAN 应用程序,但我刚刚看到了这个项目:

        app.get('/breeze/Breeze/Metadata', getMetadata);

 function getMetadata(req, res, next) {
    next({
        statusCode: 404,
        message: "No metadata from the server; metadata is defined on the client"
    });
}

我还阅读了有关 Breeze/MongoDB 的所有文档,但仍然无法帮助我为此获取元数据。 重点是我只想用BMEAN而不是WebAPI+EF+Breeze来改变后端,不需要在客户端改变代码。

谢谢

【问题讨论】:

    标签: node.js mongodb breeze


    【解决方案1】:

    元数据由 EF 提供,而不是由 MongoDB 提供。如果您在 EF 中使用 CodeFirst 方法,那么您应该已经有一个 DBContext。

    这里讲的是如何使用 DBContext -

    http://www.breezejs.com/documentation/entity-framework-dbcontext

    这将讨论如何使用 EF 作为设计工具从类构建元数据 -

    http://www.breezejs.com/documentation/ef-design-tool

    您可能已经拥有生成元数据所需的东西,它只是扩展元数据并公开服务以将其提供给客户端。

    【讨论】:

      【解决方案2】:

      PW Kad 的回答是正确的,但需要澄清的是,无法从 MongoDB 数据库中获取元数据,因为数据库本身具有不确定的结构。所以你必须告诉你的客户结构是什么。如果您想为 EF 和 Mongo 使用相同的客户端代码,那么将 EFContext 提供的元数据保存在您的 Mongo 项目中非常有意义。在其他情况下,只需通过 Breeze 的元数据 api 调用直接在客户端上定义元数据。

      【讨论】:

      • 在文档和“Zza”示例中都有使用 JS 编写客户端元数据的示例。
      猜你喜欢
      • 2013-08-14
      • 1970-01-01
      • 2013-11-06
      • 2011-11-20
      • 2019-07-17
      • 1970-01-01
      • 2019-09-29
      • 1970-01-01
      相关资源
      最近更新 更多