我有一个文档,它有一个数组属性,其中包含存储在另一个集合中的文档的 id,如下所示:
movie: { title: 'A title', genres: ['id_1', 'id_2', 'id_3', 'id_4' ] }
现在,我想通过一次查询指定电影来提取所有相关类型。使用 C# 的 MongoDB 驱动程序可以做到这一点Query.All()
吗?
我有一个文档,它有一个数组属性,其中包含存储在另一个集合中的文档的 id,如下所示:
movie: { title: 'A title', genres: ['id_1', 'id_2', 'id_3', 'id_4' ] }
现在,我想通过一次查询指定电影来提取所有相关类型。使用 C# 的 MongoDB 驱动程序可以做到这一点Query.All()
吗?
由于 mongoDB 不支持 joins ,C# Drivers 无法帮助您。(https://groups.google.com/forum/?fromgroups=#!topic/mongodb-user/Uuqikhcxp4o)。如果你在客户端加入,它会很慢。尝试改变文档结构,如果可能的话,使用流派的子文档来发挥 mongoDB 的优势。我可以给出的建议之一是,如果您在大多数地方都显示有关流派的少量信息,则 Id 存储更多信息但不是全部,因此在放映电影时您可以选择文件并轻松显示它们并给出如果他们想要更多的链接。更多关于 SO:MongoDB 和“加入”
movie: { title: 'A title', genres: [{Id : 'id_1' , "Name" : "Classic"}, {Id :'id_2' , "Name" : "Romantic"} ] }