我正在开发一个 nuget 包,它将设置当前项目以使用我公司的程序集版本控制标准。除了添加自定义构建步骤之外,我已经让它顺利地完成了我想要的所有事情(到目前为止)。
从历史上看,这是通过直接编辑 .csproj 文件并在 xml 中添加几个新标签来手动完成的。这些都是 ...
它实际上成功添加了它们,但我是通过编辑 xml 而不是通过中的 EnvDTE 对象来完成的$project参数输入安装.ps1。但我收到一条消息弹出,询问我是否要放弃我的更改。
我已经添加$project.Save()
在我进行更改之前对我的脚本进行更改并消除弹出窗口,我只是得到一个告诉我项目已更改并询问我是否要重新加载它的信息。哪个更好,但仍然不太完美。
有一个更好的方法吗?
您还可以使用 David Fowler(NuGet 首席开发人员)编写的 NuGetPowerTools 包。
Install-Package NuGetPowerTools
将其作为依赖项添加到您的包中,然后在 install.ps1 脚本中,您可以调用:
Add-Import "\Path\To\Import.targets" $project.ProjectName
Set-MSBuildProperty "MyPropertyName" "MyPropertyValue" $project.ProjectName
$value = Get-MSBuildProperty "MyPropertyName" $project.ProjectName
查看代码:https://github.com/davidfowl/NuGetPowerTools https://github.com/davidfowl/NuGetPowerTools了解更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)