.net-corejavascriptserializer

How to add `System.Web.Extensions` assembly to .net core project in vscode


I have installed c# support for vscode(version is 1.15.0) and created a HelloWorld project via dotnet new console.

Now in Program.cs, I would like to use JavaScriptSerializer class which depends on System.Web.Extensions assembly. I typed using System.Web.Script.Serialization; and run dotnet restore ,but vscode cannot resolve it. The error is,

The type or namespace name 'Web' does not exist in the namespace 'System' (are you missing an assembly reference?)

It seems that System.Web is not part of .net core, but is there any way to add the assembly to the project?

I cannot find a project.json file which is refered in other posts since it is a csproj project.


Solution

  • System.Web.Extensions is part of full .net framework . If you want to serialize and deserialize object,You can use Newtonsoft.Json,

    #using Newtonsoft.Json
    ....
    JsonConvert.DeserializeObject(json);
    

    Update

    Just get package name and version number from NuGet and add to .csproj then save. You will be prompted to run restore that will import new packages.

    <ItemGroup>
         <PackageReference Include="Newtonsoft.Json" Version="9.0.1" />
      </ItemGroup>