所以使用MongoDB和它的c#驱动程序,我有Users
和Projects
之间的多对多关系,并让它们像这样相互引用(基于这篇文章-多对多关系):
public class User
{
// other props....
ICollection<string> ProjectIds {get; set;}
}
public class Project
{
// other props....
ICollection<string> UserIds {get; set;}
}
如你所见,我用string
代替ObjectId
。我知道你可以通过在映射中使用SetRepresentation(BsonType.ObjectID)
或通过数据注释来做到这一点,但是,通过字符串列表,MongoDB抛出BsonSerializationException
。
所以,我怎么能告诉MongoDB表示字符串的ObjectIds列表?对此问题的任何意见将不胜感激。谢谢!
在mongodb中,我使用List<string>
,它将存储为集合中的[]数组,并将正常工作。