String Mongo C#将ObjectId反序列化为字符串
我改变了我所有的C#实体:String Mongo C#将ObjectId反序列化为字符串,string,mongodb,bson,objectid,String,Mongodb,Bson,Objectid,我改变了我所有的C#实体: public ObjectId Id { get; set; } 为此: [BsonRepresentation(BsonType.ObjectId)] public string Id { get; set; } 因为我需要使用Rebus并发送Id,但是如果不添加自定义序列化程序,ObjectId是不可序列化的。实际上字符串在其他地方更方便(例如:MVC控制器中的模型绑定) 无论如何,我原以为更改不会有问题,但现在我的应用程序在尝试将ObjectId反序列化为s
public ObjectId Id { get; set; }
为此:
[BsonRepresentation(BsonType.ObjectId)]
public string Id { get; set; }
因为我需要使用Rebus并发送Id,但是如果不添加自定义序列化程序,ObjectId是不可序列化的。实际上字符串在其他地方更方便(例如:MVC控制器中的模型绑定)
无论如何,我原以为更改不会有问题,但现在我的应用程序在尝试将ObjectId反序列化为string时遇到了一个异常:我的ApplicationUser类有一个
IEnumerable<string> Friendships { get; set; }
IEnumerable友谊{get;set;}
包含来自友谊实体的ID列表。它们是作为ObjectId创建的,但现在我想将它们作为字符串处理。。。现在如何在代码中处理此问题?未将Id设置为ObjectId 将其设置为具有这些属性的字符串
[BsonId(IdGenerator=typeof(StringObjectiveGenerator))]
[BsonRepresentation(BsonType.ObjectId)]
publicstringid{get;set;}
有一个约定,您可以尝试使用我在这个线程中发布它