Etc*_*lon 2 string mongodb bson objectid
我已经更改了所有 C# 实体:
public ObjectId Id { get; set; }
Run Code Online (Sandbox Code Playgroud)
对此:
[BsonRepresentation(BsonType.ObjectId)]
public string Id { get; set; }
Run Code Online (Sandbox Code Playgroud)
因为我需要使用 Rebus 并发送 Id,但如果不添加自定义序列化程序,则 ObjectId 不可序列化。实际上字符串在其他地方更方便(例如:MVC 控制器中的模型绑定)。
无论如何,我认为更改不会有问题,但现在我尝试将 ObjectId 反序列化为字符串时遇到异常:我的 ApplicationUser 类有一个
IEnumerable<string> Friendships { get; set; }
Run Code Online (Sandbox Code Playgroud)
包含来自友谊实体的 Id 列表。它们是作为 ObjectId 创建的,但现在我想将它们作为字符串处理...我现在如何在代码中处理它?
小智 6
不将 Id 设置为 ObjectId
将其设置为具有这些属性的字符串
[BsonId(IdGenerator = typeof(StringObjectIdGenerator))]
[BsonRepresentation(BsonType.ObjectId)]
public string ID { get; set; }
| 归档时间: |
|
| 查看次数: |
7918 次 |
| 最近记录: |