如何在vscode中将`System.Web.Extensions`程序集添加到.net核心项目中

时间:2017-08-15 06:56:21

标签: c# visual-studio-code

我已经为vscode安装了c#支持(版本为dotnet new console)并通过Program.cs创建了一个HelloWorld项目。

现在在JavaScriptSerializer,我想使用依赖于System.Web.Extensions汇编的using System.Web.Script.Serialization;类。我键入dotnet restore并运行System.Web,但vscode无法解析它。错误是,

  

命名空间中不存在类型或命名空间名称“Web”   '系统'(您是否缺少装配参考?)

似乎project.json不是.net核心的一部分,但有没有办法将程序集添加到项目中?

我找不到其他帖子中引用的qry = cls.query(cls.store == store_id, cls.user != exclude_user, cls.active == True, cls.offline == False).order(cls.user, cls._key, -cls.created) 文件,因为它是一个csproj项目。

4 个答案:

答案 0 :(得分:8)

System.Web.Extensions是完整的.net框架的一部分。如果要序列化和反序列化对象,可以使用Newtonsoft.Json

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

<强>更新

只需从NuGet获取软件包名称和版本号,然后添加到.csproj然后保存。系统将提示您运行将导入新软件包的还原。

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

答案 1 :(得分:5)

  

在这里,我只想知道如何添加程序集。

通常,您的.csproj

中会有这样的节点
<Reference Include="System.Web.Extensions" />

但是,由于您使用的是.NET Core,因此无法引用针对完整.NET Framework的程序集。在这种情况下,System.Web.Extensions就是其中之一,因此您无法在.NET Core项目中使用它。

答案 2 :(得分:0)

System.Web.Extensions.Serialization 替换为 System.Text.Json.Serialization。两者的用法非常相似。

答案 3 :(得分:-3)

dotnet restore

dotnet restore - 恢复项目的依赖项和工具。

dotnet restore [<ROOT>] [--configfile] [--disable-parallel] [--ignore-failed-sources] [--no-cache] [--no-dependencies] [--packages] [-r|--runtime] [-s|--source] [-v|--verbosity]
dotnet restore [-h|--help]

更多帮助More Help here