簡體   English   中英

Visual Studio MSbuild重命名文件事件

[英]Visual Studio MSbuild rename file event

我正在為Visual Studio編寫擴展,它將根據ascx代碼自動生成一些JS文件。

 public class JSCodeGenTask : Task

該任務被注冊為構建后任務,這意味着它將在每次構建后執行。 該類擴展Task,並在csproj中注冊。

   <Target Name="AfterBuild">
      <JSCodeGenTask FileNames="@(something)" outPath="@(somethingelse)" />
   </Target>

問題是,我想跟蹤程序員重命名一個ascx文件的情況,即,我想要那個ascx文件的舊名稱。 有沒有辦法訪問此信息?

 public event RenamedEventHandler Renamed

我知道可以在這里使用重命名的事件,但是我不知道如何將事件注冊到Visual Studio-.csproj。 謝謝!

我想我已經找到了解決方案

http://msdn.microsoft.com/zh-cn/library/bb166508%28VS.100%29.aspx

應該將其實現為自定義工具,而不是MSbuild事件。 可以在下面找到示例

http://code.msdn.microsoft.com/SingleFileGenerator#BuildAndRun

我認為編寫目標會更容易。 您需要做的是使用* .ascx文件創建適當的ItemGroup 您可以從“ Content獲取所有內容(或應用過濾器)

<Target Name="AfterBuild" DependsOnTargets="GenerateScripts" />
<Target Name="GenerateScripts">
  <ItemGroup>    
       <AscxFiles Include="@(Content)" Condition="'%(Extension)'=='.ascx'" />
  </ItemGroup>
  <JSCodeGenTask FileNames="@(AscxFiles)" OutPath="$(OutPath)" />
</Target>

暫無
暫無

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

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