Tarefa AssignCulture

Essa tarefa aceita uma lista de itens que pode conter uma cadeia de caracteres de identificador de cultura .NET válida como parte do nome de arquivo e produz itens com metadados nomeados como Culture que contêm o identificador de cultura correspondente. Por exemplo, o nome de arquivo Form1.fr-fr.resx tem um identificador de cultura "fr-fr" inserido; portanto, essa tarefa produzirá um item com o mesmo nome de arquivo e com os metadados Culture iguais a fr-fr. A tarefa também produz uma lista de nomes de arquivo com a cultura removida do nome de arquivo.

Parâmetros de tarefa

A tabela a seguir descreve os parâmetros da tarefa AssignCulture.

Parâmetro Descrição
AssignedFiles Parâmetro de saída ITaskItem[] opcional.

Contém a lista de itens recebidos no parâmetro Files, com uma entrada de metadados Culture adicionada a cada item.

Se o item de entrada do parâmetro Files já contiver uma entrada de metadados Culture, a entrada de metadados original será utilizada.

A tarefá atribuirá uma entrada de metadados Culture somente se o nome de arquivo contiver um identificador de cultura válido. O identificador de cultura deve estar entre os dois últimos pontos no nome de arquivo.
AssignedFilesWithCulture Parâmetro de saída ITaskItem[] opcional.

Contém o subconjunto dos itens do parâmetro AssignedFiles que tem uma entrada de metadados Culture.
AssignedFilesWithNoCulture Parâmetro de saída ITaskItem[] opcional.

Contém o subconjunto dos itens do parâmetro AssignedFiles que não tem uma entrada de metadados Culture.
CultureNeutralAssignedFiles Parâmetro de saída ITaskItem[] opcional.

Contém a mesma lista de itens produzida no parâmetro AssignedFiles, exceto aqueles com a cultura removida do nome de arquivo.

A tarefa removerá a cultura do nome de arquivo somente se ele for um identificador de cultura válido.
Files Parâmetro ITaskItem[] obrigatório.

Especifica a lista de arquivos com nomes de cultura inseridos a qual a cultura será atribuída. A tarefa tenta descobrir se cada arquivo é um recurso específico à cultura e, em caso afirmativo, qual cultura. Para ignorar esse processo de detecção e forçar um arquivo a ser neutro em termos de cultura, defina a entrada de metadados WithCulture como false.

Comentários

Além dos parâmetros listados neste artigo, essa tarefa herda parâmetros da classe TaskExtension, que herda da classe Task. Para obter uma lista desses parâmetros adicionais e suas descrições, confira Classe base TaskExtension.

Exemplo

O exemplo a seguir executa a tarefa AssignCulture com a coleção de itens 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>

A tabela a seguir descreve o valor dos itens de saída após a execução da tarefa. Os metadados do item são mostrados entre parênteses após o item.

Coleta de itens Sumário
OutAssignedFiles MyResource1.fr.resx (Culture="fr")

MyResource2.XX.resx (sem metadados adicionais)
OutAssignedFilesWithCulture MyResource1.fr.resx (Culture="fr")
OutAssignedFilesWithNoCulture MyResource2.XX.resx (sem metadados adicionais)
OutCultureNeutralAssignedFiles MyResource1.resx (Cultura="fr")

MyResource2.XX.resx (sem metadados adicionais)

Confira também