JSON เป็นน้ำหนักเบาภาษาอิสระรูปแบบการแลกเปลี่ยนข้อมูล ในอินเทอร์เน็ตวันนี้มันเป็นรูปแบบที่ใช้กันอย่างแพร่หลายสำหรับการจัดเก็บและถ่ายโอนข้อมูลระหว่างการใช้งานและการเขียนโปรแกรมภาษาต่างๆ
Json.NET เป็นเครื่องมือที่ C # ที่ทั้งสองสามารถแปลงไปและกลับจากรูปแบบ JSON การเขียนและอ่านข้อมูลได้ตามต้องการ
ห้องสมุดสามารถจัดการทั้งวัตถุเพื่อ JSON .NET ปกติและในทางกลับกันพร้อมกับ LINQ เพื่อ JSON และในทางกลับกันและ XML เพื่อ JSON และในทางกลับกัน
ด้านบนของนี้ Json.NET ยังเป็นอย่างมากเร็วกว่า .NET ในตัว serializers JSON และผลิตรูปแบบถูกต้อง JSON ข้อมูลมากขึ้นอ่านง่ายขึ้นกว่าข้อความแหลกเหลวว่า serializers ในตัวการส่งออกได้ตามปกติ
Json.NET ยังมีทาง NuGet
มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.
- คุณสมบัติใหม่:
- การปรับปรุงประสิทธิภาพ DiscriminatedUnionConverter
- เพิ่ม JsonRequiredAttribute
- เพิ่มสถานที่ให้บริการ JsonSerializerSettings.ReferenceResolverProvider
- เพิ่ม DefaultContractResolver.ResolveDictionaryKey
- เพิ่ม JsonDictionaryContract.DictionaryKeyResolver
- เพิ่มการสนับสนุนสำหรับการอ่านสตริง GUID เป็นไบต์ใน JsonTextReader
- เพิ่ม EqualityComparer เพื่อ JsonSerializer
- การเปลี่ยนแปลง:
- เปลี่ยน guid ของการอ่านเป็นไบต์ที่ให้การสนับสนุนเพียง 00000000-0000-0000-0000-000000000000 รูปแบบ
- เปลี่ยนเป้าหมายไป aspnetcore50 dnxcore50
- JsonSchema ทำเครื่องหมายเป็นล้าสมัย
- ทำเครื่องหมาย DefaultContractResolver (บูล) เป็นล้าสมัย
- JsonSerializerSettings.ReferenceResolver ทำเครื่องหมายเป็นล้าสมัย
- JsonDictionaryContract.PropertyNameResolver ทำเครื่องหมายเป็นล้าสมัย
- แก้ไข:
- คง deserializing สตริงว่างใน Hashtables
- คง JTokenReader.Path ไม่ถูกต้องในบางสถานการณ์
- ข้อผิดพลาดคงที่เมื่อ serializing วัตถุบางอย่างในความไว้วางใจกลาง
- คง deserializing ค่า UInt64 nullable ขนาดใหญ่
- คงเขียน JValues UInt64 ขนาดใหญ่
- คงแปลงคำนำหน้า namespace เปรียบใน JSON เพื่อ XML
- คง IsoDateTimeConverter เกี่ยวกับคุณสมบัติ DateTime กับ DateTimeFormatHandling.DateTimeOffset
- คงรักษาวัตถุที่มีการอ้างอิงอ่านคุณสมบัติเท่านั้น
- ข้อผิดพลาดคงที่เมื่อ deserializing จำนวนเต็ม JSON ขนาดใหญ่เพื่อ XML
- คง serializing ข้อมูลคุณสมบัติขยายกับหมาไม่มี
- คง serializing เลือกปฏิบัติสหภาพแรงงานที่มีชื่อประเภทหรือการติดตามการอ้างอิงทำงาน
- DataTableConverter คงไม่ได้ใช้การตั้งค่า JsonSerializer
- คงคุณสมบัติการแก้ไขจากอินเตอร์เฟซที่ซ้อนกัน
- เรียน deserializing คงมาจาก ConcurrentDictionary
- คงผ่านค่าเริ่มต้นการก่อสร้าง
- คง serializing อ้างอิงจากราก JsonConverters
- สตริงที่ว่างเปล่าคงบังคับให้เป็นโมฆะไม่ erroring กับ Required.Always
- แก้ไขข้อผิดพลาดที่ไม่ถูกต้อง Required.Always กับท่อตัวสร้างชื่อคุณสมบัติ
- สตริงที่ว่างเปล่าคงตรวจสอบบีบบังคับด้วย Required.Always และคอนสตรัค
มีอะไรใหม่ ในรุ่น 6.0 ที่วางจำหน่าย 8:
- คุณลักษณะใหม่:
- เพิ่ม AttributeProvider เพื่อ JsonProperty
- คงที่:
- Serializing และ deserializing สาขา const
- การใช้ MetadataTypeAttribute กับการเรียนพร็อกซี
- ข้อผิดพลาดที่ไม่ดีเมื่อ deserializing คอลเลกชันที่ไม่สนับสนุน
มีอะไรใหม่ ในรุ่น 6.0 ที่วางจำหน่าย 4:
- คุณลักษณะใหม่:
- เพิ่มการผสาน LINQ กับ JSON
- เพิ่ม JValue.CreateNull และ JValue.CreateUndefined
- เพิ่ม Windows Phone 8.1 การสนับสนุนให้กับสุทธิ 4.0 ชุมนุมพกพา
- เพิ่ม OverrideCreator เพื่อ JsonObjectContract
- เพิ่มการสนับสนุนสำหรับเอาชนะการสร้างการเชื่อมต่อและประเภทนามธรรม
- เพิ่มการสนับสนุนสำหรับการอ่าน UUID BSON ค่าไบนารีเป็น Guid
- เพิ่ม MetadataPropertyHandling.Ignore
- ปรับปรุงประสิทธิภาพของ KeyValuePairConverter
- ประสิทธิภาพที่ดีขึ้นเมื่อ serializing เอกสาร XML ที่มีขนาดใหญ่
- การเปลี่ยนแปลง:
- ขนาดแยกจำนวนเต็ม จำกัด ขนาดจำนวนเต็ม JavaScript
- การตรวจสอบว่าตัวเลขไม่ได้จบด้วยตัวอักษรที่ไม่ถูกต้อง
- แก้ไข:
- คง JToken.ReadFrom สร้างค่าสตริงสำหรับการแสดงความคิดเห็น
- คงอาศัยในการสั่งซื้อพจนานุกรมเมื่อโทรก่อสร้างแปร
- คงเขียนบรรทัดใหม่เพื่อใช้ TextWriter.WriteLine
- คง deserializing IReadOnlyCollection ที่ไม่ทั่วไป & # x3c; T & # x3e; การใช้งาน
- คงส่งการร้องขอ HTTP เมื่อการแก้ไข URL ที่ DTD ใน XmlNodeConverter
- ประชากรคงที่คุณสมบัติไม่สนใจกับ DefaultValueHandling.IgnoreAndPopulate
- คงไม่ขว้างปา JsonReaderException เมื่อแยกบางตัวเลขที่ไม่ถูกต้อง
- JsonConvert.PopulateObject คงไม่ตั้งค่าการตั้งค่า JsonReader
มีอะไรใหม่ ในรุ่น 6.0 ที่วางจำหน่าย 2:
- คุณลักษณะใหม่:
- เพิ่มการสนับสนุนสำหรับ Windows Phone 8.1.
มีอะไรใหม่ ในรุ่น 6.0 ที่วางจำหน่าย 1:
- คุณลักษณะใหม่:
- เพิ่มการสนับสนุนสำหรับ JSONPath
- เพิ่มการสนับสนุนสำหรับ serializing F # เลือกปฏิบัติสหภาพแรงงาน
- เพิ่มการสนับสนุนสำหรับ deserializing DataTables ซ้อนกันและอาร์เรย์ใน DataTables
- เพิ่มการสนับสนุนสำหรับการอ่านหลายชิ้นของ JSON กับ JsonReader
- เพิ่ม AllowIntegerValues การตั้งค่า StringEnumConverter
- เพิ่มทศนิยมและการก่อสร้าง datetimeoffset JValue
- เพิ่มการสนับสนุนสำหรับการอ่าน JSON บรรทัดเดียวความเห็น
- จำนวนที่ดีขึ้นการแยกข้อความผิดพลาด
- เปลี่ยนแปลง:
- รุ่นสภาเพื่อ 6.0.0.0
- .NET 4 สร้างเป้าหมายและแบบพกพา MonoTouch MonoDroid ในแพคเกจ NuGet
- .NET 4 สร้างเป้าหมายและแบบพกพา WP8 SL5 แทน WP7 และ SL4
- ลบ:
- DefaultMemberSearchFlags ใน DefaultContractResolver เป็นล้าสมัย
- SerializeObjectAsync, DeserializeObjectAsync, PopulateObjectAsync ใน JsonConvert ล้าสมัย
- คงที่:
- JObject คุณสมบัติ ICustomTypeDescriptor กลับค่าไม่ถูกต้อง
- ข้อผิดพลาดเมื่อหล่อ base64 สตริงแบบไดนามิกเพื่อ byte อาร์เรย์
- EntityKeyMemberConverter แก้ไขไม่ได้ใช้ชื่อคุณสมบัติ
- Serializing JValues กับ JsonConverters อ่านได้อย่างเดียว
- แทนที่การจัดรูปแบบวิธีการ SerializeObject
- ข้อผิดพลาดเมื่อตัดข้อยกเว้นใน JsonConverter
- การใช้ข้อมูลที่มีการขยายตัวสร้างไม่ใช่ค่าเริ่มต้น
- เป็นอันดับ Uri RoundTripping กับ Uri.OriginalString
มีอะไรใหม่ ในรุ่น 5.0 ที่วางจำหน่าย 7:
- คุณลักษณะใหม่:
- เพิ่มการสนับสนุนสำหรับคอลเลกชันไม่เปลี่ยนรูป
- เพิ่ม WriteData และการตั้งค่าที่จะ DataExtensionAttribute ReadData li>
- เพิ่มการอ้างอิงและชื่อประเภทการจัดการข้อมูลการสนับสนุนการขยาย
- ค่าเริ่มต้นที่เพิ่มเข้ามาและการสนับสนุนที่จำเป็นในการคอนสตรัค deserialization
- การเปลี่ยนแปลง:
- ข้อมูลขยายถูกเขียนตอนนี้เมื่อ serializing
- แก้ไข:
- เพิ่มบรรยากาศที่ขาดหายไปในการ JToken
- แยกคงที่หมายเลขจุดลอยขนาดใหญ่
- คงไม่แยกบางวัน ISO เขตเวลา
- การตรวจสอบสคีคงที่ของค่าจำนวนเต็มเมื่อชนิดเป็นจำนวน
- การเขียนคงที่ของค่า IConvertible เมื่อ TypeCode กลับเป็นวัตถุ
มีอะไรใหม่ ในรุ่น 5.0 ที่วางจำหน่าย 6:
- คุณลักษณะใหม่:
- เพิ่มต่อเนื่อง / deserialized JSON เพื่อติดตาม verbose.
- เพิ่มการสนับสนุนสำหรับการใช้ชื่อประเภทการจัดการที่มีเนื้อหา ISerializable.
- คงที่:
- ไม่ใช้การตั้งค่าเริ่มต้น serializer กับค่านิยมดั้งเดิมและ JToken.ToObject.
- การเขียนข้อผิดพลาด BigIntegers กับ JsonWriter.WriteToken.
- Serializing และ deserializing enums ธงที่มีคุณลักษณะ EnumMember.
- ข้อผิดพลาด deserializing อินเตอร์เฟซกับแปลงประเภทที่ถูกต้อง.
- ข้อผิดพลาด deserializing วัตถุ ISerializable ที่ยังใช้ IConvertible.
มีอะไรใหม่ ในรุ่น 5.0 ที่วางจำหน่ายที่ 5:
- คุณลักษณะใหม่:
- เพิ่มการตั้งค่าเริ่มต้นเป็นอันดับระดับโลกที่มี JsonConvert.DefaultSettings
- การสนับสนุนข้อมูลที่มีการขยายเพิ่ม JsonExtensionDataAttribute
- เพิ่ม NullValueHandling DefaultValueHandling และการสนับสนุนเพื่อ serializing แบบไดนามิก
- การเปลี่ยนแปลง:
- บางวิธีการอินเตอร์เฟซที่ชัดเจนใน JArray ให้ประชาชนที่จะสนับสนุนการใช้งานกับ ImpromtuInterface
- คงที่:
- deserializing ที่ไม่ได้มาตรฐาน ISO รูปแบบวันที่คีย์พจนานุกรม
- ค่าไม่ได้ถูกตั้งค่าเมื่อ deserializing กับ DefaultValueHandling.IgnoreAndPopulate
- deserializing กับการจัดการชื่อประเภทและประกอบเต็มไปด้วย Assembly.LoadFrom
- deserializing Regexes เมื่อใช้ StringEnumConverter
- Serializing และ deserializing พิมพ์ชุดข้อมูล
มีอะไรใหม่ ในรุ่น 5.0 ที่วางจำหน่าย 4:
- คุณลักษณะใหม่ - เพิ่ม JsonWriter.SetWriteState เพื่อสนับสนุนการถ่ายทอดทางพันธุกรรม จากการใช้งาน JsonWriter
- เปลี่ยน - เปลี่ยน .NET 4.5 ห้องสมุดแบบพกพาและห้องสมุด WinRT ใช้รวบรวมสะท้อนแสดงออก
มีอะไรใหม่ ในรุ่น 5.0 ที่วางจำหน่าย 3:
- ข้อผิดพลาดคงที่ serializing ชนิดที่ไม่ทั่วไปที่ใช้ IEnumerable และ # x3c; T & # x3e.
ความคิดเห็นที่ไม่พบ