AssignCulture 工作
此工作會接受專案清單,這些專案可能包含有效的 .NET 文化特性識別符字串做為檔名的一部分,併產生具有名為 Culture
包含對應文化特性標識碼之元數據的專案。 例如,檔名 Form1。fr-fr.resx 具有內嵌的文化特性標識碼 “fr-fr”,因此此工作會產生元數據 Culture
等於 fr-fr
的專案。 工作也會產生檔名清單,其中已從檔名中移除文化特性。
工作參數
下表描述 AssignCulture
工作的參數。
參數 | 描述 |
---|---|
AssignedFiles |
選擇性 ITaskItem[] 輸出參數。包含在 Files 參數中收到的專案清單,並將 Culture 元數據專案新增至每個專案。如果來自 Files 參數的傳入專案已經包含 Culture 元數據專案,則會使用原始元數據專案。如果檔名包含有效的文化特性標識碼,工作只會指派 Culture 元數據專案。 文化特性標識碼必須在檔名的最後兩個點之間。 |
AssignedFilesWithCulture |
選擇性 ITaskItem[] 輸出參數。包含具有 Culture 元數據專案之 AssignedFiles 參數的專案子集。 |
AssignedFilesWithNoCulture |
選擇性 ITaskItem[] 輸出參數。包含 AssignedFiles 參數中沒有 Culture 元數據專案的子集。 |
CultureNeutralAssignedFiles |
選擇性 ITaskItem[] 輸出參數。包含 AssignedFiles 參數中產生的相同專案清單,但從檔名中移除的文化特性除外。如果工作是有效的文化特性標識符,工作只會從檔名中移除文化特性。 |
Files |
必要 ITaskItem[] 參數。指定要指派文化特性之內嵌文化特性名稱的檔案清單。 工作會嘗試找出每個檔案是否為特定文化特性的資源,如果是,則為文化特性。 若要略過此偵測程式並強制檔案保持文化特性中性,請將元資料專案 WithCulture 設定為 false 。 |
RespectAlreadyAssignedItemCulture |
選擇性 bool 參數。如果設定為 true - 已設定 Files 項目參數上的文化特性元數據,且 CultureNeutralAssignedFiles 會填入 Files 中未變更的檔名。 |
言論
除了本文所列的參數之外,此工作也會繼承自 TaskExtension 類別的參數,而該類別本身會繼承自 Task 類別。 如需這些其他參數及其描述的清單,請參閱 TaskExtension 基類。
例
下列範例會使用 ResourceFiles
專案集合來執行 AssignCulture
工作。
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ResourceFiles Include="MyResource1.fr.resx"/>
<ResourceFiles Include="MyResource2.XX.resx"/>
</ItemGroup>
<Target Name="Culture">
<AssignCulture
Files="@(ResourceFiles)"
<Output TaskParameter="AssignedFiles"
ItemName="OutAssignedFiles"/>
<Output TaskParameter="AssignedFilesWithCulture"
ItemName="OutAssignedFilesWithCulture"/>
<Output TaskParameter="AssignedFilesWithNoCulture"
ItemName="OutAssignedFilesWithNoCulture"/>
<Output TaskParameter="CultureNeutralAssignedFiles"
ItemName="OutCultureNeutralAssignedFiles"/>
</AssignCulture>
</Target>
</Project>
下表描述工作執行後輸出專案的值。 專案元數據會顯示在項目之後的括弧中。
專案集合 | 內容 |
---|---|
OutAssignedFiles |
MyResource1.fr.resx (Culture=“fr”) MyResource2.XX.resx (沒有額外的元數據) |
OutAssignedFilesWithCulture |
MyResource1.fr.resx (Culture=“fr”) |
OutAssignedFilesWithNoCulture |
MyResource2.XX.resx (沒有額外的元數據) |
OutCultureNeutralAssignedFiles |
MyResource1.resx (Culture=“fr”) MyResource2.XX.resx (沒有額外的元數據) |