当我运行 dotnet run 时,为什么 dotnet restore 命令在后台运行?

时间:2021-04-06 14:02:59

标签: c# .net asp.net-core .net-core dotnet-cli

我刚刚开始学习 dotnet,我开始使用 CLI 与它进行交互,我发现自己对以下内容有些不知所措:
我创建了一个 dotnet 控制台应用程序,并开始编写一些代码并使用了一些 NuGet 包,因此当我完成后,我尝试使用 dotnet run 命令运行我的应用程序,我注意到 dotnet restore 在后台运行。
我的问题是:
-如果我可以访问我在 .csproj 中引用的 Nuget 中的所有接口并在我的应用程序中使用它们为什么他需要运行 dotnet restore ?(因为我假设当我引用包时他会做恢复这就是为什么我'我能够使用类......由代码中的包提供)
- 在 .csproj 文件中引用包是否意味着带来包的所有代码源?
谢谢

1 个答案:

答案 0 :(得分:0)

<块引用>

在 .csproj 文件中引用包是否意味着带来包的所有代码源?

没有。 NuGet 包通常只是程序集。 (它们也可用于客户端资产,例如 jQuery,在这种情况下,它们确实包含源代码,因为这是您在客户端上需要的)。

<块引用>

如果我可以访问我在 .csproj 中引用的 Nuget 中的所有接口并在我的应用程序中使用它们为什么他需要运行 dotnet restore ?

恢复涵盖以下情况:您的 NuGet 缓存不包含正确版本的所有所需包(例如,您刚刚创建了一个存储库以进行一些更改)。