【发布时间】:2025-12-26 01:35:07
【问题描述】:
我有一个应用程序,它有两个相似但不同的对象,我想将这些对象存储在同一个集合中。做这个的最好方式是什么?我如何查询这个集合?
今天我的收藏代表:
public IMongoCollection<Post> Posts
{
get
{
return _database.GetCollection<Post>("posts");
}
}
我有这门课:
public class Post
{
public string Id { get; set; }
public string Message { get; set; }
}
public class NewTypePost
{
public string Id { get; set; }
public string Image { get; set; }
}
所以,今天我可以使用 Post 类保存和查询。现在我想存储和检索 Post 和 NewTypePost 这两个类。
我尝试将类类型从 Post 更改为动态。但是当我这样做时,我无法查询集合。
【问题讨论】:
-
拥有两个集合有什么问题?您始终可以通过
_database.GetCollection<BsonDocument>("posts")获取收藏 -
两个类太相似,用于同一个海豚。如果我使用两个集合,我将需要在两个地方进行两次查询才能找到我想要的。 Mongo 可以存储不同的对象。我在 node.js 上执行此操作,我不知道如何在 C# 驱动程序上执行此操作。
-
您希望以什么方式执行查询?最后你将不得不要求
Image或Message对吗?
标签: c# mongodb mongodb-.net-driver