JamesNK / Newtonsoft.Json

Json.NET is a popular high-performance JSON framework for .NET
https://www.newtonsoft.com/json
MIT License
10.79k stars 3.26k forks source link

feature request: Add EXI serialize / deserialize support to JSON.NET #504

Closed ericleigh007 closed 9 years ago

ericleigh007 commented 9 years ago

I realize that EXI would in its best version need to support schemas, but the spec does allow for non-schema operation as well.

Perhaps this would require some use of both Json.net and Json.net schema, but it would be a very useful project with EXI use coming to the forefront now.

There is an openEXI library for C#.NET but it only seems to "easily" convert XML to EXI and back -- not very useful when one wants the same simple Serialize and Deserialize interface.

Something like this would be ideal for getting EXI into the mainstream:

EXISchemaInfo esi = new EXISchemaInfo( xsd_file_stream);
EXISerializer es = new EXISerializer(esi);  // or null for non-schema operation

es.options.BitPacking = true;
// . . . more options

using ( var ms = new MemoryStream())
{
    es.Serialize( ms , tObj );
   // do something with the stream
}

var tNObj = es.Deserialize<testObject>(ms);

Would like to hear your thoughts.

If you're not interested in adding support, perhaps alternatively you can recommend a way that you know or at least suspect that Json.NET and openEXI may be combined to do what I'm looking for. Would love to get real EXI Serializer onto Github.

-thanks for your time -e

JamesNK commented 9 years ago

Someone else can do it.

ericleigh007 commented 9 years ago

That's $10 per word for the recent $50 donation.

I expect you're probably a very busy person, but If you get some time, I'd appreciate a more considered response as to how one might go about expanding the capability of JSON.NET for EXI.

If not, I certainly appreciate the great product anyway.

-thanks -e

Sent from my account on Outlook.com

Date: Sat, 7 Mar 2015 13:30:08 -0800 From: notifications@github.com To: Newtonsoft.Json@noreply.github.com CC: ericleigh007@outlook.com Subject: Re: [Newtonsoft.Json] feature request: Add EXI serialize / deserialize support to JSON.NET (#504)

Someone else can do it.

— Reply to this email directly or view it on GitHub.

JamesNK commented 9 years ago

A custom JsonReader and JsonWriter were used to add BSON - http://www.newtonsoft.com/json/help/html/CustomJsonReader.htm

However getting something that doesn't have JSON concepts (arrays, objects, types) to work with the serializer will be very hard.