草庐IT

Pickle反序列化

全部标签

mongodb - MVC4 WebApi 序列化/反序列化 MongoDB ObjectId

我正在将MVC4WebApi与RestSharp客户端一起使用,我正在努力让ObjectIds正确地序列化(或反序列化)。我有一个像这样的基础类(class):publicclassUser{[BsonId]publicObjectIdId{get;set;}publicstringFirstName{get;set;}publicstringLastName{get;set;}}在客户端反序列化此对象的最佳/正确方法是什么?我尝试过的所有Id属性都是有值(value)的ObjectId.Empty。更新我已经尝试创建不同的ObjectIdDeserializers。下面是反序列化器和

java - 使用 Jongo 和 MongoDB 在 jackson 反序列化中将 ObjectId _id 重命名为 id

我刚刚开始使用play框架、jongo和MongoDB进行一个项目。该项目最初是用Play2.1编写的,带有一个字符串id字段的pojos,同时注释了:@Id和@ObjectId这将作为ObjectId持久存在于Mongo中,并且在反序列化时会将id输出为:例如:“id”:“53fcb9ede4b0b18314098d10”.自升级到Jongo1.1和Play2.3.3以来,id属性在反序列化时始终命名为“_id”,我希望该属性保留字段名称但我不能使用@JsonProperty("custom_name")作为Jongo@Id注释在幕后执行@JsonProperty("_id")。im

java - 使用 jackson 库反序列化 MongoDB $oid

我有一个写入MongoDB的非常简单的POJO。然后它向我返回包含_id属性作为$oid对象的JSON。我想将它写入我的POJO,但到目前为止都失败了。我见过很多人为此苦苦挣扎并提出了不同的解决方案,但我还没有让他们中的任何一个发挥作用。可能是因为没有人提供他们实际使用的库的确切细节。有codehaus.jackson.*有com.fastxml.jackson.、jongo、org.mongo.、com.mongo.*等等。我的对象看起来像这样:packagecom.blueplanetsoftware.metrics.rest;importjavax.persistence.Id;

c# - 在 MongoDB 中查找和反序列化对象

我尝试使用MongoDB驱动程序反序列化对象,但出现错误。我的代码和mongodb官网的例子代码很像,找不到哪里错了。这是错误:"Element'_id'doesnotmatchanyfieldorpropertyofclassmongotry.place."还有代码:usingMongoDB.Driver;usingMongoDB.Bson;classplace{publicstringname{get;set;}publicListrates{get;set;}publicplace(stringname,Listrates){...}publicintgetAvgRate(){.

c# - MongoDB c# 驱动程序 - 在序列化字典中执行 LINQ "Any"

我有一个带有一些属性的文档类型,其中之一是Dictionary。序列化和反序列化似乎工作正常(我可以搜索、执行CRUD操作等)。问题是我正在尝试编写一种方法来查找该类型的所有对象,其中字典在其键中包含特定值(id)。尝试查询:varobjectCollection=db.GetCollection("MyClass");varquery=Query.Where(m=>m.MyDictionary.Any(k=>k.Key==id));类:publicclassMyClass{publicObjectIdId{get;set;}//...[BsonElement("Dictionary"

c# - MongoDB 自定义序列化程序以避免 _t 被添加到集合中,抛出 ReadEndArray 错误?

情况:语言:C#使用C#驱动程序我有一个包含List作为属性的模型。该列表可以包含全部继承BaseModelClass的3个不同模型之一。为了帮助序列化这种情况,Mongo添加了_t来识别实际使用的是哪个模型。对我们来说,这是一个问题,因为_t占用的空间量很大。我是一个低级开发人员,我要求更多的空间和ram,他们告诉我在没有额外空间的情况下解决它。所以我坐下来编写一个自定义序列化程序来处理不同的类型,而无需将_t写入BSONDocument。在我开始对序列化进行单元测试之前,我认为一切都很好。我开始收到“ReadEndArray只能在ContextType为Array时调用,而不能在C

Spring Boot进阶(61):【技巧大揭秘】FastJson序列化遇到部分属性丢失?这里有一招优雅解决!

1.前言🔥    一提到FastJson,就没有不清楚它为何物的,毕竟FastJson出自一位阿里工程师所开源的一款JSON解析器和生成器(反序列化与序列化组件),几乎所有项目都有它的身影,起码我开发过的九点九成项目都有用到它...    此刻,于是乎很多同学便开始脑补了,作者难道今天就只是为了介绍FastJson组件这种老掉牙的知识点?从而把我们给打发咯?这也太敷衍了吧。否也否也,同学们别心急,bug菌只是抛砖引玉,好戏在后头!其实细心的同学就能发现了,正如标题所言,如何解决这种序列化时属性会部分丢失问题,今天我要讲的就是带着同学们认识这种问题并如何优雅解决这种bug,比如如下截图所示:  

c# - NodaTime with MongoDB : Value class NodaTime. ZonedDateTime 无法反序列化

我使用的是最新版本的NodaTime和MongoDBOfficialDriver.我有一个简单的POCO类,它使用NodaTime的ZonedDateTime作为一些属性中.NETDateTime的替代品。publicclassMyPOCO{[BsonId][Key]publicObjectIdSomeId{get;set;}publicstringSomeProperty{get;set;}publicZonedDateTimeSomeDateTime{get;set;}}我可以轻松地将模型放入集合中,但是当我尝试读取查询的模型时,我得到以下信息MongoDB.Bson.BsonSe

c# - MongoDB 序列化 Dictionary<MyEnum,object>

我有一些模型Dictionary.当我尝试使用C#驱动程序插入mongoDB时,出现异常并显示以下消息:WhenusingDictionaryRepresentation.Documentkeyvaluesmustserializeasstrings.当然,我可以添加属性[BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]它可以工作,但我希望能够将枚举保留为字符串。publicMyEnum{A,B}[BsonDictionaryOptions(DictionaryRepresentation.Document)]

mongodb - 具有枚举值的 Scala 序列化异常

我正在使用scala的play2.1框架和MongoDBSalat插件。当我更新Enumeration.Value时出现异常:java.lang.IllegalArgumentException:can'tserializeclassscala.Enumeration$Valatorg.bson.BasicBSONEncoder._putObjectField(BasicBSONEncoder.java:270)~[mongo-java-driver-2.11.1.jar:na]atorg.bson.BasicBSONEncoder.putIterable(BasicBSONEncod