Mat*_*int 68 .net msbuild csproj nuget
将某些NuGet包添加到项目时,有时会在.csproj文件的第一个属性组中显示一个奇怪的项.
<PropertyGroup>
...
<NuGetPackageImportStamp>3d051ef3</NuGetPackageImportStamp>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
邮票每次都不同,并且看起来不是连续的.
我<NuGetPackageImportStamp>
在NuGet文档中找不到任何引用.它是什么,它是如何工作的?有必要吗?
一个似乎每次添加这个的包是StyleCop.MSBuild,至少使用当前的4.7.49版本.只需将该包添加到新项目中,您就会看到这个神秘项目出现在您的项目文件中.
Mat*_*ard 74
NuGetPackageImportStamp是Visual Studio 2013及更高版本的解决方法,无法检测到添加或删除了MSBuild导入的NuGet包.
旧版Visual Studio不需要此解决方法.即使在Visual Studio 2013中,也可以安全地删除该属性:如果关闭并重新打开解决方案,Visual Studio将重新加载导入的MSBuild目标.
NuGet源代码显示,当包添加或删除MSBuild导入时,NuGet会添加此属性.它每次都使用一个新的GUID.Visual Studio 2013检测到项目已更改并提供重新加载.仅添加或删除MSBuild导入是不足以让Visual Studio 2013知道项目在运行时已更改,这是NuGet通过此变通方法解决的问题.
StyleCop.MSBuild NuGet包中包含一个自定义MSBuild目标,因此添加或删除此NuGet包将导致添加此属性.
归档时间: |
|
查看次数: |
9805 次 |
最近记录: |