管理NuGet包
浏览和查找NuGet包
VS Code 提供了查看和查找NuGet包的UI界面:打开一个Polyglot Notebook
文件,打开一个"终端", 切换到 "nuget"项:打开一个UI管理窗口。如下图:
导入 NuGet 包
在.NET Interactive
中,C#和F#核允许你使用#r nuget
魔法命令将NuGet包导入到你的交互式会话中。两种语言的语法相同。
- 导入最新版本的包,使用
#r nuget
而无需指定版本号:
#r "nuget:Newtonsoft.Json"
//使用包:序列化一个匿名类集合
//引入命名空间
using Newtonsoft.Json;
{ //花括号分隔作用域
var persons = new[]
{
new {Name="张三", Age = 20},
new {Name="李四", Age = 69},
new {Name="王五", Age = 82},
};
var jsonText = Newtonsoft.Json.JsonConvert.SerializeObject(persons);
Console.WriteLine(jsonText);
}
- 导入指定版本的包
#r "nuget:Newtonsoft.Json,13.0.3"
- 导入预览版本的包
#r "nuget:System.CommandLine,*-*"
设置包源
如果包不是Nuget官方托管包,或者想明确包的来源,使用#i
命令指定一个nuget包源
- 默认包源
可以不用设置,默认使用的官方托管包
//默认包源:可以不设置
#i "nuget:https://api.nuget.org/v3/index.json"
-
远程包源
组织通常会将包存储在私人或预发布源中
//添加dotnet项目的预发布nuget源
#i "nuget:https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json"
-
本地包源
可以将一个本地文件夹作为nuget源
//"C:\Users\用户账号\.nuget\packages" 是 Windows 系统中 visual studio 默认的本机 nuget 包存储位置,可以当本地包源(注意路径用户账号换成自己的)
//当然可使用任意文件夹,里面要有nuget包
#i "nuget:C:\Users\ruyu\.nuget\packages"
#r "nuget:MyOrg.MyPackage"
-
需要认证的包源
一些企业搭建有自己的nuget私有包服务器(MyGet等),使用时需要认证。
但是:.NET Interactive 不直接支持访问需要身份验证的包源,但你可以通过在用户级别的 nuget.config 文件中放入包源的 PAT 来访问经过身份验证的源。