Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using System.Text.Json instead of Newtonsoft.Json #278

Open
VahidN opened this issue Jun 27, 2019 · 7 comments
Open

Using System.Text.Json instead of Newtonsoft.Json #278

VahidN opened this issue Jun 27, 2019 · 7 comments

Comments

@VahidN
Copy link

VahidN commented Jun 27, 2019

.NET Core 3x introduces the new built-in System.Text.Json namespace which has a higher performance than the Newtonsoft.Json dependency of CacheManager.Serialization.Json. It would be nice to add it later.

@ndrwrbgs
Copy link

It seems these don't have feature parity and could break if you upgraded to a new version of this library using System.Text.Json (Newtonsoft seems to handle your types better according to Microsoft) : https://docs.microsoft.com/en-us/dotnet/standard/serialization/system-text-json-migrate-from-newtonsoft-how-to.

With this consideration would you still desire this feature as the default, or as a separate option that makes the change more obvious to the user (e.g. a SEPARATE json serializer)?

@ndrwrbgs
Copy link

Started to do this, but the different handling of JSON is scaring me too much [things like Newtonsoft allows comments in JSON but the new library does not by default].

I'd ship it as a completely separate serializer, which could be implemented within this library or externally to be promoted to first-class at a later date if usage warrants it. A transparent upgrade within CacheManager.Serialization.Json seems too risky especially in a distributed system where some old code and some new code would have to coexist for periods of time.

@ndrwrbgs
Copy link

@VahidN do you want to make a PR for a new serializer?
@MichaCo I think this would be a feature-request rather than a "compatibility with netcore30" ask/issue

@bbqchickenrobot
Copy link

any news on this?

@huseyingoztok
Copy link

I am having similar problem. Can anyone suggest a solution?

@MichaCo
Copy link
Owner

MichaCo commented Mar 10, 2021

It'll definitely be it's own package and incompatible with newtonsoft json serialized Keys, so don't mix it in your deployments 😎

And sure, I'd be happy to see a pr for that, @ndrwrbgs or any one else

@huseyingoztok
Copy link

That's how I solved the problem within the app.

Cachemanager1
Cachemanager2
Cachemanager3
Cachemanager4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants