Поделиться через


Задача AssignCulture

Эта задача принимает список элементов, которые могут содержать допустимую строку идентификатора языка и региональных параметров .NET в составе имени файла, и создает элементы с метаданными с именем Culture с соответствующим идентификатором языка и региональных параметров. Например, имя файла Form1.fr-fr.resx имеет внедренный идентификатор языка и региональных параметров "fr-fr", поэтому эта задача создает элемент с тем же именем файла с Culture метаданных, равным fr-fr. Задача также создает список имен файлов с языком и региональными параметрами, удаленными из имени файла.

Параметры задачи

В следующей таблице описаны параметры задачи AssignCulture.

Параметр Описание
AssignedFiles Необязательный параметр вывода ITaskItem[].

Содержит список элементов, полученных в параметре Files, с записью Culture метаданных, добавленной к каждому элементу.

Если входящий элемент из параметра Files уже содержит запись метаданных Culture, используется исходная запись метаданных.

Задача назначает только запись метаданных Culture, если имя файла содержит допустимый идентификатор языка и региональных параметров. Идентификатор языка и региональных параметров должен находиться между последними двумя точками в имени файла.
AssignedFilesWithCulture Необязательный параметр вывода ITaskItem[].

Содержит подмножество элементов из параметра AssignedFiles с записью метаданных Culture.
AssignedFilesWithNoCulture Необязательный параметр вывода ITaskItem[].

Содержит подмножество элементов из параметра AssignedFiles, у которых нет записи метаданных Culture.
CultureNeutralAssignedFiles Необязательный параметр вывода ITaskItem[].

Содержит тот же список элементов, которые создаются в параметре AssignedFiles, за исключением языка и региональных параметров, удаленных из имени файла.

Задача удаляет только язык и региональные параметры из имени файла, если это допустимый идентификатор языка и региональных параметров.
Files Обязательный параметр ITaskItem[].

Указывает список файлов со встроенными именами языка и региональных параметров, которыми нужно назначить язык и региональные параметры. Задача пытается выяснить, является ли каждый файл ресурсом, зависящим от языка и региональных параметров, и если да, то какой язык и региональные параметры. Чтобы пропустить этот процесс обнаружения и принудительно использовать файл и региональные параметры, задайте для записи метаданных WithCulture значение false.
RespectAlreadyAssignedItemCulture Необязательный параметр bool.

Если задано значение true , то уже заданные метаданные языка и региональных параметров в параметре элемента Files учитывается, а CultureNeutralAssignedFiles будет заполнены без изменений имени файла из Files.

Замечания

Помимо параметров, перечисленных в этой статье, эта задача наследует параметры из класса TaskExtension, который сам наследует от класса Task. Список этих дополнительных параметров и их описания см. в разделе базовый класс TaskExtension.

Пример

В следующем примере выполняется задача AssignCulture с коллекцией элементов ResourceFiles.

<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 (без дополнительных метаданных)

См. также