CombinePath 工作

將指定的路徑結合成單一路徑。

工作參數

下表描述 CombinePath 工作的參數。

參數 描述
BasePath 必要的 String 參數。

要與其他路徑結合的基底路徑。 可以是相對路徑、絕對路徑或空白。
Paths 必要的 ITaskItem[] 參數。

要與 BasePath 結合以形成結合路徑的個別路徑清單。 路徑可為相對或絕對路徑。
CombinedPaths 選擇性的 ITaskItem[] 輸出參數。

此工作所建立的結合路徑。

備註

除了上述所列的參數,此項工作還會繼承 TaskExtension 類別中的參數,而該類別本身又繼承 Task 類別。 如需這些其他參數的清單及其描述,請參閱 TaskExtension 基底類別

下列範例示範如何使用 CombinePath 建立輸出檔案夾結構,藉由結合與 $(ReleaseDirectory) 串連的根 $(PublishRoot) 路徑和子資料夾清單 @(LangDirectories),來建構屬性 $(OutputDirectory)

 <PropertyGroup>
   <OutputType>Exe</OutputType>
   <TargetFramework>netcoreapp3.1</TargetFramework>
   <PublishRoot>C:\Site1\</PublishRoot>
   <ReleaseDirectory>Release\</ReleaseDirectory>
 </PropertyGroup>

 <ItemGroup>
   <LangDirectories Include="en-us\;fr-fr\"/>
 </ItemGroup>

 <Target Name="CreateOutputDirectories" AfterTargets="Build">
   <CombinePath BasePath="$(PublishRoot)$(ReleaseDirectory)" Paths="@(LangDirectories)" >
     <Output TaskParameter="CombinedPaths" ItemName="OutputDirectories"/>
   </CombinePath>
   <MakeDir Directories="@(OutputDirectories)" />
 </Target>

CombinePath 允許成為清單的唯一屬性是 Paths,在此情況下,輸出也是清單。 因此,如果 $(PublishRoot)C:\Site1\,且 $(ReleaseDirectory)Release\,且 @(LangDirectories)en-us;fr-fr\,則此範例會建立資料夾:

  • C:\Site1\Release\en-us\
  • C:\Site1\Release\fr-fr\

另請參閱