Commit Graph
48 Commits
Author SHA1 Message Date
James Newton-King 6965fcfa46 -Fixed potential race condition serializing F# objects
-Fixed schema divisible sometimes incorrectly validating to false
-Fixed not calling virtual ShouldSerialize methods
2014-03-31 15:47:36 +13:00
James Newton-King 44bc7ea246 -Removed SL/WP code and fiels 2013-10-20 16:41:15 +13:00
James Newton-King bcd6982419 -Code reformat 2013-10-20 15:08:39 +13:00
James Newton-King 397d35f04b -Fixed build 2013-05-04 15:39:13 +12:00
James Newton-King 9b1be2d4e0 -Fixed build 2013-05-04 15:28:45 +12:00
James Newton-King 2004377f3e -Fixed WinRT build 2013-04-25 13:35:26 +12:00
Paul Betts 4bd932396d -add tests for base class object events 2013-02-12 12:12:58 -08:00
James Newton-King c6eff351a4 -Removed old PocketPC ifdefs 2013-02-10 17:49:36 +13:00
James Newton-King c3158291cc -Fixed tests on non-English Windows 2012-09-08 19:34:06 +12:00
James Newton-King d63e662bda -Fixed DateParseHandling not being overridden on serializer proxy
-License text on all source files
2012-04-25 09:32:32 +12:00
James Newton-King 10256fcf68 -Added Portable Class Library build 2012-04-18 21:02:34 +12:00
James Newton-King 83618b1ea0 -Line endings 2012-04-08 18:10:07 +12:00
James Newton-King 8471c4ffe1 -Added IgnoreSerializableInterface to DefaultContractResolver
-Changed serializing ISerializable types under partial trust to error to fix security issue
-Fixed LinqBridge collision error in .NET 2.0 by moving types to a different namespace
-Fixed JObject.Keys error when object has no items
2012-03-18 16:24:30 +13:00
James Newton-King 5800e97ff3 -Added Newtonsoft.Json.Metro build (whew, what a pain!)
-Added .gitignore file
2012-03-15 18:34:51 +13:00
James Newton-King f9e5745425 -Changed serializer to fallback to use a private default constructor
-Changed error message when deserializing a JSON object/array onto the wrong kind of type to be more descriptive
2012-03-10 17:39:39 +13:00
James Newton-King 0d6ad0b76e -Added Path to JsonReader/JsonWriter/ErrorContext with the JSON path of the current position
-Changed collection type on JsonArrayContract to public
-Changed dictionary key type and dictionary value type on JsonDictionaryContract to public
-Fixed error handling when failing to parse array content
-Fixed error handling when there are missing required properties
2012-02-23 23:07:41 +13:00
JamesNK 06d92a8963 -Fixed not replacing ignored properties in JsonPropertyCollection 2012-02-09 11:11:23 +00:00
JamesNK 48dd217c84 -Updated build number
-Example SerializationBinder test
2011-11-19 09:10:38 +00:00
JamesNK bc726f1b6d -Added Populate and IgnoreAndPopulate options to DefaultValueHandling for automatically populating default values during deserialization 2011-08-01 02:05:14 +00:00
JamesNK 045a1ec334 -Improved support for deserializing objects using non-default constructors
-JsonConverterAttribute now allowed on constructor parameters
-JsonPropertyAttribute now allowed on constructor parameters
2011-05-02 10:52:01 +00:00
JamesNK c046ac36f9 -Added CamelCaseText to StringEnumConverter 2010-12-19 00:49:35 +00:00
JamesNK 12a91cce9e -Updated source code to VS2010
-Updated main project to .NET 4.0
-Updated to psake 4.0
-Changed assembly version to 4.0.0.0
-Added ICustomTypeDescriptor implementation to JObject, removed JTypeDescriptionProvider and JTypeDescriptor
-Changed serialization of collections to use iterator rather than indexer
-Removed Compact Framework project
-Fixed XML documentation warnings
2010-08-31 02:19:41 +00:00
JamesNK c2800930ab -Added DateTimeKindHandling to BsonWriter to control how a DateTime is converted prior to being serialized
-Added Required.Always attribute validation when writing JSON as well reading
-Added TypeNameHandling.Auto to automatically write the type name when a value doesn't match the declared type
-Fixed reading multi-byte strings in BSON
2010-07-03 09:53:57 +00:00
JamesNK c9ec228942 -Removed HtmlColorConverter to remove System.Drawing.dll dependency
-Fixed culture invariance
-Fixed serialization attributes to work in .NET 2.0
2010-07-01 10:27:18 +00:00
JamesNK f5ed7be283 -Improved default null and value handing when JSON value is not compatible with property value
-Added interfaces, structs and enums as valid targets of JsonConverterAttribute
2010-05-27 08:37:34 +00:00
JamesNK 6d67aefac7 -Added ReflectionDelegateFactory, DynamicReflectionDelegateFactory and LateBoundDelegateFactory to support switching between dynamic and late bound reflection for medium trust environments
-Added WriteObjectId to BsonWriter
-Added BsonObjectId and BsonObjectIdConverter classes
-Added KeyValuePairConverter
-Added DynamicCodeGeneration flag to DefaultContractResolver
-Changed JsonConverter.ReadJson to add an extra parameter: currentValue
2010-03-17 06:53:47 +00:00
JamesNK 42bf89940d -Fixed various schema generation bugs
-Renamed MemberHandler delegate to ObjectConstructor
2010-02-05 23:14:06 +00:00
JamesNK 961945657a -Added JsonPrimitiveContract and JsonLinqContract
-Removed JsonRaw and replaced with JRaw
-Fixed properties on existing derived values not being populated during deserialization
2009-12-27 03:30:43 +00:00
JamesNK f1a9993723 -Added reading and writing binary JSON (BSON) support - work in progress
-Added BsonReader, BsonWriter
-Added support for reading and writing byte arrays to JsonReader, JsonWriter and LINQ to JSON classes
-Added ReadAsBytes to JsonReader
-Changed Silverlight build serializer to look for a TypeConverter
-Changed .NET build to not rely on System.ComponentModel.DataAnnotations assembly to support .NET 4.0 client profile
-Remove DateTimeOffset stand-in from Compact Framework build
-Fixed .NET 2.0 build to run on environments without .NET 2.0 SP1
-Fixed deserialization to always use a new value created from a JsonConverter
-Fixed XmlNodeConverter to support converting comments in JSON
2009-12-06 23:10:14 +00:00
JamesNK 4ae9c5767b -Fixed unclosed object when including type name with array 2009-11-05 05:54:17 +00:00
JamesNK 2a63ea24e3 -Added ObjectCreationHandling to JsonPropertyAttribute
-Added IValueProvider, ReflectionValueProvider, DynamicValueProvider
-Added Dynamic.snk
-Added Required enum with options Default, AllowNull and Always
-Added serialization event support to Silverlight version
-Added Converter to JsonProperty for JsonConverter
-Changed IsRequired to Required enum
-Changed schema generator to allow for Required enum options
-Changed Silverlight project version to Silverlight 3
-Improved error message when JSON array encountered for object and vice-versa when deserializing
-Improved error message for converting types when deserializing
-Improved error message from getting and setting properties when serializing and deserializing
-Fixed empty string being converted to null when deserializing
-Removed dependency on Entity Framework and LINQ to SQL assemblies
2009-11-02 08:21:02 +00:00
JamesNK b313445e01 -Documentation
-Added Error event to JsonSerializer
2009-10-11 04:23:35 +00:00
JamesNK 7e75bbdcf7 -Performance
-Added ConstructorHandling to allow object creation using non-public default constructors
2009-10-10 06:09:15 +00:00
JamesNK 75627d6292 -XML documentation
-Changed OnError to be available in .NET 2.0, Silverlight and Compact Framework builds
-Added StreamingContext stand-in for frameworks where it isn't available
-Split test classes out of JsonSerializerTests
2009-10-10 00:54:01 +00:00
JamesNK 95caaf9dc1 -Added type descriptor objects to support JObject property databinding
-Added OnErrorAttribute and ErrorContext for handling serialization errors
2009-08-22 12:01:24 +00:00
JamesNK 5167415f47 -Changed empty string to be deserialized as null for nullable types 2009-08-06 08:52:00 +00:00
JamesNK a4022ec5d3 -More documentation (I know!)
-Fixed decimals to always be written with a decimal place
-Replaced IMappingResolver with IContractResolver
-Renamed JsonMemberMapping to JsonProperty
-Added JsonContract, JsonObjectContract, JsonArrayContract, JsonDictionaryContract
-Added support for OnSerializing, OnSerialized, OnDeserializing, OnDeserialized callback methods
-Major refactoring of serialization internals
2009-07-05 02:55:58 +00:00
JamesNK 6b19c9cf72 -More documentation
-Changed CustomCreationConverter to throw NotImplementedException when serializing
2009-06-19 12:37:49 +00:00
JamesNK 63160b04ff -Added documentation (gasp!)
-Fixed serialization of Uri members on Silverlight/Compact Framework
-Fixed serialization of JToken members
-Fixed (hopefully) cache threading issues
2009-06-16 09:50:59 +00:00
JamesNK fec0ec5a1d -Lots of XML code comments
-Added type name handling to serializer
-Fixed various compilation warnings
2009-05-30 06:13:51 +00:00
JamesNK f0c5be266b -Added JsonSerializer argument to JsonConverter.ReadJson and JsonConverter.WriteJson. Needed because serializer now has state
-Added CustomCreationConverter
-Added IsReference to JsonContainerAttribute
-Added PreserveReferencesHandling to JsonSerializer
-Added IReferenceResolver to JsonSerializer
-Split internals of JsonSerializer into JsonSerializerWriter (serializes) and JsonSerializerReader (deserializes)
-Moved serialize stack from JsonWriter (yuck) to JsonSerializerWriter (yay)
-Added FromObject overload with JsonSerializer argument for cases when state is needed
2009-05-13 10:15:41 +00:00
JamesNK affb9ec906 -Added even more detail to no root XML element exception message when converting JSON to XML. Seriously, if you still get stuck here you're an idiot
-Added NullValueHandling, DefaultValueHandling and ReferenceLoopHandling to JsonPropertyAttribute
-Change JsonMemberMapping from a struct to a class. Now has too many properties for a struct
2009-04-22 05:56:34 +00:00
JamesNK 3630a43f11 -Added StringEnumConverter
-Added BinaryConverter
2009-03-29 01:36:06 +00:00
JamesNK b9bedd1233 -Rename Product.Expiry to Product.ExpiryDate in tests 2009-03-21 09:19:16 +00:00
JamesNK 9fd47e6334 -Added support to deserializing to IEnumerable<T>, IList<T>, IDictionary<K, V>
-Added populating members when creating object from non default constructor
-Added case best match when deserializing properties
-Added ToString(Formatting, JsonConverters[]) overload to JToken
-Added SerializeObject(object, Formatting, JsonConverter[]) overload to JsonConvert
-Added IMappingResolver. Property added to JsonSerializer, JsonSerializerSettings, JsonSchemaGenerator
-Added CamelCaseMappingResolver
2009-03-14 00:38:28 +00:00
JamesNK 803c381c72 -Added deserialize test for jagged arrays
-Made deserializer ignore missing members by default
2009-01-15 08:46:54 +00:00
JamesNK 399033059b -Added IJsonLineInfo. Implemented by JsonTextReader, JsonTokenReader, JsonValidatingReader, JToken
-Added line details to JsonTextReader exception messages and JsonValidatingReader errors
-Change JsonSchemaGenerator to disable additional properties on sealed classes
-Fixed JsonSchemaGenerator to not output enum values and options for flag enums
2009-01-04 05:26:26 +00:00
JamesNK 0319263756 -Added JSON Schema implementation
-Move test serialization objects to TestObjects namespace
-Fixed JsonConvert to always write a floating point number with a decimal place
-Changed Type values to serialize and deserialize to type name string
-Fixed JsonWriter to allow objects and arrays to be written in a constructor
-Added JsonContainerAttribute with Id, Title and Description members. JsonObject and JsonArray inherit from this attribute
-Added JsonArrayAttribute. Has flag to control whether array can contain null items.
-Added IsRequired to JsonProperty
-Replaced protected method GetSerializableMembers with GetMemberMappings on JsonSerializer
-Fixed QuoteChar not getting set when parsing property name
-Added Load(JsonReader) to JProperty, JConstructor
-Fixed error when populating JProperty with content from collection
-Added the ability for JsonTokenWriter to write individual values as well as arrays and objects
-Added CreateReader to JToken
-Added FromObject to JToken
-Added ReadFrom to JToken
2009-01-02 05:29:31 +00:00