我已经为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项目。
答案 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