快速入门:在 Visual Studio 中安装和使用 NuGet 包(仅适用于 Windows)
NuGet 包 包含其他开发人员已提供的在项目中使用的可重用代码。 可以使用 NuGet 包管理器、包管理器控制台或 .NET CLI 在 Microsoft Visual Studio 项目中安装 NuGet 包。 本文演示如何使用常用 Newtonsoft.Json
包创建 Windows Presentation Foundation (WPF) 项目。 相同的过程适用于任何其他 .NET 或 .NET Core 项目。
安装 NuGet 包后,可以使用 using <namespace>
语句在代码中引用它,其中 <命名空间> 是正在使用包的名称。 创建引用后,就可以通过 API 调用包。
若要查找 NuGet 包,请从 nuget.org 开始。浏览 nuget.org 是 .NET 开发人员通常在自己的应用程序中查找可重用组件的方式。 你可以直接搜索 nuget.org 或如本文所示,在 Visual Studio 中查找和安装包。
一、先决条件
安装 Visual Studio 2022 for Windows 和 .NET 桌面开发工作负载。
二、创建项目
你可将 NuGet 包安装到任何 .NET 项目,前提是此包支持与项目相同的目标框架。 不过,在本快速入门中,你将创建一个 Windows Presentation Foundation (WPF) 应用程序项目。
执行以下步骤:
-
在 Visual Studio 中,选择 “文件” “新建” “项目”。
-
在 “创建新项目” 窗口中,在搜索框中输入 WPF,然后在下拉列表中选择 C# 和 Windows。 在得到的项目模板列表中,选择 “WPF 应用程序”,然后选择“下一步”。
-
在 “配置新项目” 窗口中,根据需要更新项目名称和解决方案名称,然后选择“下一步”。
-
在 “其他信息” 窗口中,为 “框架” 选择 .NET 6.0(或最新版本),然后选择“创建”。
Visual Studio 将创建项目并出现在解决方案资源管理器中。
三、添加 Newtonsoft.Json Nuget 包
若要在快速入门期间安装 NuGet 包,可以使用 NuGet 包管理器或包管理器控制台。 根据项目格式,NuGet 包安装会将依赖项记录在项目文件或 packages.config 文件中。 有关详细信息,请参阅包使用工作流。
3.1 NuGet 程序包管理器
若要使用 NuGet 包管理器,在 Visual Studio 中安装 Newtonsoft.Json
包,请按照下列步骤操作:
- 选择 “项目” > “管理 NuGet 包” 。
- 在 “NuGet 包管理器” 页中,选择 nuget.org 作为包源。
- 在 “浏览” 选项卡中,搜索 Newtonsoft.Json,在列表中选择 Newtonsoft.Json,然后选择 “安装”。
- 如果系统提示验证安装,请选择 “确定”。
3.2 程序包管理器控制台
或者,若要使用 Visual Studio 中的 包管理器控制台 安装 Newtonsoft.Json
包,请按照下列步骤操作:
-
从 Visual Studio 中,依次选择 “工具>” “NuGet 包管理器” “包管理器控制台”
-
包管理器控制台打开后,验证 “默认项目” 下拉列表中是否显示在程序包中要安装的项目。 如果解决方案中只有一个项目,则会预选该项目。
-
在控制台提示下,输入
Install-Package Newtonsoft.Json
命令。 有关此命令的详细信息,请参阅 Install-Package。控制台窗口会显示该命令的输出。 错误通常指示程序包与项目的目标框架不兼容。
四、在应用中使用 Newtonsoft.Json API
使用项目中的 Newtonsoft.Json
包,可调用 JsonConvert.SerializeObject
方法将对象转换为可人工读取的字符串:
-
在解决方案资源管理器中,打开 MainWindow.xaml,并将现有
<Grid>
元素替换为以下代码:<Grid Background="White"><StackPanel VerticalAlignment="Center"><Button Click="Button_Click" Width="100px" HorizontalAlignment="Center" Content="Click Me" Margin="10"/><TextBlock Name="TextBlock" HorizontalAlignment="Center" Text="TextBlock" Margin="10"/></StackPanel> </Grid>
-
打开 MainWindow.xaml 节点下的 MainWindow.xaml.cs 文件,并在构造函数之后在
MainWindow
类中插入以下代码:public class Account {public string Name { get; set; }public string Email { get; set; }public DateTime DOB { get; set; } }private void Button_Click(object sender, RoutedEventArgs e) {Account account = new Account{Name = "John Doe",Email = "john@microsoft.com",DOB = new DateTime(1980, 2, 20, 0, 0, 0, DateTimeKind.Utc),};string json = JsonConvert.SerializeObject(account, Newtonsoft.Json.Formatting.Indented);TextBlock.Text = json; }
-
若要避免代码中
JsonConvert
对象的错误(将出现红色波浪线),请在代码文件的开头添加以下语句:using Newtonsoft.Json;
-
若要构建并运行应用,请按 F5 或选择 “调试” “启动调试”。