MongoDB C#驱动程序 - 将字符串列表表示为ObjectId列表

时间:2014-05-30 03:21:06

标签: c# mongodb mongodb-.net-driver bson

因此,使用MongoDB及其C#驱动程序,我在UsersProjects之间建立了多对多的关系,并让它们像这样相互引用(基于这篇文章 - {{3} }):

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?关于这个问题的任何意见将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

在mongodb中,我使用List<string>它将作为[]数组存储在集合中,并且可以正常工作。