AspNetCompiler 工作

AspNetCompiler 工作包裝 aspnet_compiler.exe,此為預先編譯 ASP.NET 應用程式的公用程式。

工作參數

下表說明 AspNetCompiler 工作的參數。

參數 描述
AllowPartiallyTrustedCallers 選擇性的 Boolean 參數。

如果此參數為 true,強式名稱的組件將允許部分信任的呼叫端。
Clean 選擇性的 Boolean 參數

如果此參數為 true,將全新建置先行編譯的應用程式。 任何先前已編譯的元件都將重新編譯。 預設值是 false。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -c 參數 (Switch)。
Debug 選擇性的 Boolean 參數。

如果此參數為 true,就會在編譯期間發出偵錯資訊 (.PDB 檔案)。 預設值是 false。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -d 參數 (Switch)。
DelaySign 選擇性的 Boolean 參數。

如果此參數為 true,就不會在建立時完整簽署組件。
FixedNames 選擇性的 Boolean 參數。

如果此參數為 true,就會為編譯的組件指定固定的名稱。
Force 選擇性的 Boolean 參數

如果此參數為 true,工作將會覆寫目標目錄 (如果已經存在)。 現有的內容都會遺失。 預設值是 false。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -f 參數 (Switch)。
KeyContainer 選擇性的 String 參數。

指定強式名稱金鑰容器。
KeyFile 選擇性的 String 參數。

指定強式名稱金鑰檔的實體路徑。
MetabasePath 選擇性的 String 參數。

指定應用程式的完整 IIS Metabase 路徑。 此參數無法與 VirtualPathPhysicalPath 參數相結合。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -m 參數 (Switch)。
PhysicalPath 選擇性的 String 參數。

指定要編譯之應用程式的實體路徑。 如果此參數遺失,可以使用 IIS Metabase 來尋找應用程式。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -p 參數 (Switch)。
TargetFrameworkMoniker 選擇性的 String 參數。

指定 TargetFrameworkMoniker,指示應該使用 aspnet_compiler.exe 的哪一個 .NET Framework 版本。 只接受 .NET Framework Moniker。
TargetPath 選擇性的 String 參數。

指定編譯應用程式的實體路徑。 如果未指定,則會就地先行編譯應用程式。
Updateable 選擇性的 Boolean 參數。

如果此參數為 true,將可更新先行編譯的應用程式。 預設值是 false。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -u 參數 (Switch)。
VirtualPath 選擇性的 String 參數。

要編譯之應用程式的虛擬路徑。 如果指定了 PhysicalPath,就能使用實體路徑來尋找應用程式。 否則,會使用 IIS metabase,而且假設應用程式位於預設網站中。 此參數 (Parameter) 對應到 aspnet_compiler.exe 上的 -v 參數 (Switch)。

ToolTaskExtension 參數

此工作繼承自 ToolTaskExtension 類別,該類別繼承自 ToolTask 類別,而其本身繼承自 Task 類別。 此繼承鏈結將數個參數加入至從它們衍生的工作。

下表說明基底類別的參數:

參數 描述
EchoOff 選擇性的 bool 參數。

當設定為 true 時,此工作會將 /Q 傳遞至 cmd.exe 命令列,使命令列不會被複製到 stdout。
EnvironmentVariables 選擇性 String 陣列參數。

環境變數定義的陣列 (以分號分隔)。 每個定義都應該指定以等號分隔的環境變數名稱和值。 這些變數是在規則環境區塊以外傳遞至繁衍的可執行檔,或選擇性地覆寫。 例如: Variable1=Value1;Variable2=Value2
ExitCode 選擇性 Int32 輸出唯讀參數。

指定已執行命令提供的結束代碼。 如果工作已記錄任何錯誤,但是此程序具有結束代碼 0 (成功),這會設為 -1。
LogStandardErrorAsError 選擇性的 bool 參數。

如果為 true,則標準錯誤資料流上收到的所有訊息都會記錄為錯誤。
StandardErrorImportance 選擇性的 String 參數。

用來從標準錯誤資料流記錄文字的重要性。
StandardOutputImportance 選擇性的 String 參數。

用來從標準輸出資料流記錄文字的重要性。
Timeout 選擇性的 Int32 參數。

指定時間量 (以毫秒為單位),在此時間量之後會終止工作可執行檔。 預設值是 Int.MaxValue,表示沒有逾時期間。 逾時是以毫秒為單位。
ToolExe 選擇性的 string 參數。

專案可能會實作此項目以覆寫 ToolName。 工作可能會覆寫此項目以保留 ToolName。
ToolPath 選擇性的 string 參數。

指定位置,工作會從該位置載入基礎可執行檔。 如果未指定這個參數,工作會使用 SDK 安裝路徑,對應於執行 MSBuild 的架構版本。
UseCommandProcessor 選擇性的 bool 參數。

當設為 true 時,這項工作會針對命令列建立批次檔,並且使用命令處理器來執行,而不是直接執行命令。
YieldDuringToolExecution 選擇性的 bool 參數。

當設為 true 時,這項工作在執行其工作時,會產生節點。

範例

下列程式碼範例使用 AspNetCompiler 工作來先行編譯 ASP.NET 應用程式。

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Target Name="PrecompileWeb">
        <AspNetCompiler
            VirtualPath="/MyWebSite"
            PhysicalPath="c:\inetpub\wwwroot\MyWebSite\"
            TargetPath="c:\precompiledweb\MyWebSite\"
            Force="true"
            Debug="true"
        />
    </Target>
</Project>

另請參閱