c#:元素'Id'与任何字段或属性MongoDB

时间:2018-04-07 08:14:20

标签: c# mongodb

我在mongodb中有这个Bson模型:

"setting|resources" : {
                    "Name" : "EsupHamrah",
                    "Id" : "449ea0e1-0261-4bee-b096-a838746c94ea",
                    "Children" : [..

我创建了这个合约模型:

public class SettingResources
    {
        public string Name { get; set; }

        [BsonElement]
        //[BsonRepresentation(BsonType.String)]
        public string Id { get; set; }

        //[BsonId(IdGenerator = typeof(CombGuidGenerator))]
        //public string Id { get; set; }

        public IList<object> Children { get; set; }
    }

当我查询时,我收到了这个错误:

An error occurred while deserializing the configs property of class ConsoleMongoApp.Applications: An error occurred while deserializing the values property of class ConsoleMongoApp.Configs: An error occurred while deserializing the resources property of class ConsoleMongoApp.Values: Element 'Id' does not match any field or property of class ConsoleMongoApp.SettingResources.

Id只是字符串,而不是GUID或ObjectId但为什么mongo无法映射id?

1 个答案:

答案 0 :(得分:1)

你在mongodb的模型是错误的,有一个| (管道)在Json字符串中,尝试修复“settingResources”

"settingResources" : {
                    "Name" : "EsupHamrah",
                    "Id" : "449ea0e1-0261-4bee-b096-a838746c94ea",
                    "Children" : [..