簡體   English   中英

預構建操作

[英]Pre-build action

作為構建過程的一部分,我需要在預構建時替換 ac# 項目中的一些代碼。 我希望有一些鈎子可以在.csproj文件中指定。 我正在使用騎士。 這篇文章似乎是關於我所需要的; https://docs.microsoft.com/en-us/visualstudio/ide/reference/pre-build-event-post-build-event-command-line-dialog-box?view=vs-2019 ,但我不是確定如何在.csproj使用它。

你如何在 C# 中指定預構建操作?

您可以在 csproj 中定義一個 BeforeBuild 目標來運行命令。 比如說,我有一個想要運行的 PS 腳本:

<Target Name="BeforeBuild">                                                                    
   <Exec Command="$(PowerShellExe) -NonInteractive -executionpolicy Unrestricted 
             -command &quot;&amp; invoke-command -scriptblock { 
                      &amp;&apos;$(ScriptLocation)&apos; 
                      &apos;$(LogFileLocation)&apos;  
                      &apos;$(MSDeployComputerName)&apos;}
                      &quot;"/>    
</Target>

請參閱文檔

.csproj您可以添加以下內容:

<PropertyGroup>
    <PreBuildEvent>start %25comspec%25</PreBuildEvent>
</PropertyGroup>

在這種情況下,這只會啟動一個 cmd 窗口,但您可以替換它。 您也可以將其放在要使用的屬性組中。 查看文檔

另外我想特別注意預處理器指令#if 當你想替換調試代碼時,它應該只存在於調試環境中,它是一個靜態替換,這會更容易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM