source: code/Website/dot-net-library/written-by-xiao-yifang/OpenFlashChart/JSON/ReadMe.txt

Last change on this file was 7849, checked in by dennisw, 15 years ago
File size: 2.1 KB
Line 
1JsonFx.NET - JSON Serializer
2
3The JsonFx.NET JSON parser/serializer functions similarly to the XmlSerializer in .NET
4
5Serializes and deserializes any Dictionary<String, T> and IDictionary with
6String keys directly as a JSON object
7
8Serializes and deserializes any List<T>, ArrayList, LinkedList<T>, Queue<T> and
9many other IEnumerable types directly as JSON arrays
10
11Serializes and deserializes DateTime, Enum, Nullable<T>, Guid and other
12common .NET Types directly as JSON primitives
13
14Serializes and deserializes strongly-typed custom classes (similarly to XML
15Serialization in .NET Framework)
16
17Serializes C# 3.0 Anonymous Types directly as JSON objects
18
19Serializes C# 3.0 LINQ Queries as JSON arrays of objects (by enumerating the results)
20
21Follows Postel's Law ("Be conservative in what you do; be liberal in what you accept from others.")
22by accepting handling many non-JSON JavaScript concepts:
23 - Common literals such as "Infinity", "NaN", and "undefined"
24 - Ignores block and line comments when deserializing
25
26Optional ability to control serialization via attributes/interfaces:
27
28 JsonFx.Json.IJsonSerializable:
29 Interface which allows classes to control their own JSON serialization
30
31 JsonFx.Json.JsonIgnoreAttribute:
32 Attribute which designates a property or field to not be serialized
33
34 System.ComponentModel.DefaultValueAttribute:
35 Member does not serialize if the value matches the DefaultValue attribute
36
37 JsonFx.Json.JsonNameAttribute:
38 Attribute which specifies the naming to use for a property or field when serializing
39
40 JsonFx.Json.JsonSpecifiedPropertyAttribute:
41 Attribute which specifies the name of the property which specifies if member should be serialized
42
43Optional Type-Hinting improves deserializing to strongly-typed objects
44
45 JsonFx.Json.JsonWriter.TypeHintName & JsonFx.Json.JsonReader.TypeHintName:
46 Property designates the name of the type hint property (e.g. "__type") and enables type hinting
47
48Optional PrettyPrint mode helps with debugging / human-readability
49
50 JsonFx.Json.JsonWriter.PrettyPrint
51
52Optional custom DateTime serialization override
53
54 JsonFx.Json.JsonWriter.DateTimeSerializer
Note: See TracBrowser for help on using the repository browser.