期間從Visual Studio擴展傳遞定製項目屬性如何傳遞一個自定義的MSBuild屬性到Visual Studio生成引擎從Visual Studio擴展(我想寫一個自定義的插件)?就像Visual Studio本身傳遞的屬性如$(Configuration)
和$(Platform)
一樣,我想附加到構建過程並傳遞我自己的屬性(例如$(MyCustomProperty) = "foobar"
)。我知道它可以使用MsBuild命令行(/p:Property
)來完成,但我想從擴展中完成。構建
這裏是我想accompilsh什麼一個例子:Visual Studio的工具欄,在文本框,其中用戶可以鍵入一些文字 - 一個值,我想傳遞給構建引擎。
然後在.csproj的:
<PropertyGroup>
<MyCustomProperty Condition=" '$(MyCustomProperty)' == '' ">DefaultValue</MyCustomProperty>
</PropertyGroup>
<Target Name="AfterBuild" Condition=" '$(MyCustomProperty)' = 'DoAfterBuild' ">
...
</Target>
所以目標AfterBuild
將exectued只有當用戶輸入DoAfterBuild
到我的擴展的文本框中
如何的Visual Studio擴展調用MSBUILD? – Nicodemeus
@NickCarlson - 我不想調用MsBuild,但.csproj文件是MsBuild腳本,Visual Studio在構建過程中傳遞$(Platform)和$(Configuration)變量的實際值。我希望將$(MyOwnProperty)值傳遞給此腳本,以便我可以使用它(例如) –
你希望能夠通過Visual Studio Extension定義你自己的屬性,但是現在你說你不想調用MSBUILD。你是否正在編寫自己的擴展並想定義自己的自定義屬性?也許代碼示例將有助於說明問題。 – Nicodemeus