maicalal
maicalal

Reputation: 101

JSon.Net JObject.FromObject Vs JsonConvert.DeserializeObject<JObject>(JsonConvert.SerializeObject(obj));

I tried looking for the above comparison but couldn't find an answer.

As there are multiple ways to get a JObject (or all child types inheriting from JToken) eg:

Method1

. JObject.FromObject(obj);

Method2

. JsonConvert.DeserializeObject<JObject>(JsonConvert.SerializeObject(obj));

would Method1 perform better than Method2 ?

My usecase is related to backing up a set of entities into a text file and restoring it back.

Upvotes: 5

Views: 10129

Answers (2)

James Newton-King
James Newton-King

Reputation: 49042

This is faster:

JObject.FromObject(obj);

It builds a JObject directly from the object. The other method serializes the object to JSON a JSON string and then parses the JSON to build a JObject.

Documentation: JObject.FromObject

Upvotes: 17

Florian F.
Florian F.

Reputation: 4700

If you look at the source code here and there, both method use jsonSerializer. So it should be the exact same.

Upvotes: 1

Related Questions