gpt4 book ai didi

c# - MongoDB 中的子对象

转载 作者:太空宇宙 更新时间:2023-11-03 16:54:40 24 4
gpt4 key购买 nike

我一直在关注 Rob Conery 的 Linq for MongoDB,并遇到了一个问题。在示例中,他展示了如何轻松地嵌套子对象。对于我当前的实验,我有以下结构。

class Content
{
...
Profile Profile { get; set; }
}

class Profile
{
...
}

这在查看内容项时效果很好。我现在面临的困境是我是否想将 Profile 视为原子对象。就目前而言,似乎我无法直接查询 Profile 对象,但它与 Content 结果打包在一起。如果我希望它具有包容性,但也能够仅对 Profile 进行查询,我觉得我的第一直觉是将 Profiles 设为顶级对象,然后在 Content 类下创建一个类似外键的结构,将两者联系在一起。

对我来说,这感觉就像我正在倒退到 RDBMS 实践上,而且感觉我很可能违背了 Mongo 的精神。您会如何处理一个您需要独立操作但又想将其作为另一个对象的子对象的对象?

最佳答案

没有太关注 Rob 的东西,只是在这里大声思考。难道你不能有一个 Content 对象可以获取的 Profile 提供者对象,并且可以通过某种方式获取你正在寻找的 Profile 的实例。

这将有利于您正在寻找的组合而不是父/子关系。

再次,在这里大声思考,但我会让内容对象具有 IProfileProvider 类型的依赖项,并且我会在需要时将该提供程序注入(inject)到内容对象中。这将允许我将 Content 类型与 Profile 类型组合在一起,同时不明确具有父/子关系

关于c# - MongoDB 中的子对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2604745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com