У меня есть коллекция под названием conversation_trees
, и она работала нормально, затем я хотел добавить в нее новое поле, но когда я это сделал, я начал получать следующую ошибку:
Exception thrown: 'System.FormatException' in MongoDB.Bson.dll
Мой код:
public List<Node> FindRoot()
{
List<Node> results = collection.Find(x => x.parents.Length == 0).ToList();
results.Count();
return results;
}
[Serializable]
[BsonNoId]
[BsonIgnoreExtraElements]
public class Node
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
public string node_Id { get; set; }
public string[] parents { get; set; }
public string[] children { get; set; }
public string node_type { get; set; }
public string text { get; set; }
public string author { get; set; }
public bool user_input { get; set; }
public string ar { get; set; }
}
Первоначально я скопировал весь документ с удаленного сервера на новый экземпляр cosmosdb, и он работал нормально, но добавление любых полей самим его нарушит.
Изначально у меня был node_Id (ранее просто Id), родители и дети как ObjectId, а [BsonId], [BsonRepresentation (BsonType.ObjectId)], [BsonNoId] и [BsonIgnoreExtraElements] - все, что я добавил позже
Ваше добавленное поле допускает значение NULL? MongoDB не имеет информации о структуре данных.