0

我有有这样的一个的NuGet参考.vstemplate文件:Visual Studio项目模板添加packages.config无需下载Nugets

<WizardExtension> 
    <Assembly>NuGet.VisualStudio.Interop, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Assembly> 
    <FullClassName>NuGet.VisualStudio.TemplateWizard</FullClassName> 
</WizardExtension> 

的默认行为是VisualStudio中会上网,获得所需的软件包,创建packages.config并在其中放置引用。但是如果你不在线,VisualStudio会抛出一个异常,说他找不到包并且不会创建package.config。

现在,是否有可能重写该行为?无论VisualStduio下载软件包的能力如何,我都想获取packages.config文件。

回答

0

是否可以重写该行为?

这个问题的答案是否定的。 正如我们所知道的packages.config,packages.config文件在某些​​项目类型中用于维护项目引用的包列表。如果我们将软件包安装到项目中,nuget会自动将packages.config添加到项目中。如果您没有安装任何软件包,则会添加packages.config 而不是。这是nuget的默认行为。它是如此设计的。

此外,据我知道有预装包,模板预先安装的软件包添加到您的项目模板,你需要: 1.编辑您的vstemplate文件,并通过添加WizardExtension添加到的NuGet模板向导参考元素 2.添加要在项目中安装的软件包列表

nuget默认行为没有覆盖。所以如果你想通过Visua Studio模板覆盖nuget的默认行为是不可能的。

作为一个建议,你的问题是关于挑战nuget的设计,你可以问这个问题在GitHub