快速入门:在 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 调用包。
本文仅适用于 Windows 用户。 如果使用的是 Visual Studio for Mac,请参阅在 Visual Studio for Mac 中安装并使用包。
提示
若要查找 NuGet 包,请从 nuget.org 开始。浏览 nuget.org 是 .NET 开发人员通常在自己的应用程序中查找可重用组件的方式。 你可以直接搜索 nuget.org 或如本文所示,在 Visual Studio 中查找和安装包。 有关更多信息,请参阅查找和评估 NuGet 包。
先决条件
安装 Visual Studio 2022 for Windows 和 .NET 桌面开发工作负载。
可以从 visualstudio.microsoft.com 免费安装 2022 Community 版,或者使用 Professional 或 Enterprise 版。
创建项目
你可将 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 文件中。 有关详细信息,请参阅包使用工作流。
NuGet 程序包管理器
若要使用 NuGet 包管理器,在 Visual Studio 中安装 Newtonsoft.Json
包,请按照下列步骤操作:
选择“项目”>“管理 NuGet 包” 。
在“NuGet 包管理器”页中,选择 nuget.org 作为包源。
在“浏览”选项卡中,搜索 Newtonsoft.Json,在列表中选择 Newtonsoft.Json,然后选择“安装”。
如果系统提示验证安装,请选择“确定”。
程序包管理器控制台
或者,若要使用 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 或选择“调试>”“启动调试”。
将显示以下窗口:
选择“点击此处”按钮,查看替换为某些 JSON 文本的
TextBlock
对象内容。
相关视频
- 在 Visual Studio 中安装和使用 NuGet 包
- 在第 9 频道和 YouTube 上查找更多 NuGet 视频。
另请参阅
有关 NuGet 应用的详细信息,请参阅以下文章:
后续步骤
祝贺你安装并使用第一个 NuGet 包。 进入下一篇文章,详细了解如何安装和管理 NuGet 包。