System.Security.Permissions missing when invoking JsonConvert.DeserializeObject<T> in .NET Core 2.0

This was due to a lack of understanding of how .NET Core works. I opened up the csproj and added a reference to the required file 'System.Security.Permissions' and reloaded the project. At this point, nuget resolved it. Json.NET now works as expected.


First look at the Packages section of your solution, most probably you will see warnings there:

enter image description here

You should know that NuGet will not necessarily install the latest version for the library.
Especially with the Newtonsoft.Json version 8.0.3 there is an issue with System.Security.Permissions reference, however, such an issue already doesn't exist with the 12.0.3 version.

In this case (and most probably for a lot of other cases), the solution is to right-click on the Packages and choose "Manage Nuget Packages...".

Then click on the "Update" button:

enter image description here

Rebuild the solution(also you can try to close and open a solution too) and that's it ))


In my case, I've simply updated to Newtonsoft.Json latest available version and the issue is gone. I had the issue while migrating a lib from .net framework to .net standard and it was quite outdated.