Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Existem alguns tipos de fontes de localização predefinidos, que o TNF traz suporte nativo.

O .NET Core ainda mantem suporte a Globalização e Localização default do framework.

Arquivos XML

Os textos de localização podem ser armazenados em arquivos XML:

...

Bloco de código
languagec#
firstline1
titleRegistrando uma fonte de localização JSON
linenumberstrue
Configuration.Localization.Sources.Add(
    new DictionaryBasedLocalizationSource(
        "MySourceName",
        new JsonEmbeddedFileLocalizationDictionaryProvider(
            Assembly.GetExecutingAssembly(),
            "MyCompany.MyProject.Localization.Sources"
            )
        )
    );

SQL Server

Para utilizar a estrutura do TNF para localização em banco de dados você irá precisar criar em seu banco duas tabelas TnfLanguages e TnfLanguageTexts.

A tabela TnfLanguages representa os idiomas suportados e TnfLanguageTexts as suas traduções:

Para criação do estrutura você deverá executar o seguinte script: Localization-Script.sql

Agora para criar suporte a uma nova linguagem você pode inserir via SQL:

Bloco de código
languagesql
firstline1
titleInsertLanguage.sql
linenumberstrue
INSERT INTO [dbo].[TnfLanguages] ([TenantId],[IsDeleted],[Name],[DisplayName],[CreationTime])
VALUES (NULL,0,'pt-BR','Português',GETDATE())

Note que a tabela contém o campo TenantId. Preencha esta informação caso você esteja trabalhando com Multi-tenancy.

Para incluir uma nova chave de tradução utilize o SQL:

Bloco de código
languagesql
firstline1
titleInsertLocalizationKey.sql
linenumberstrue
INSERT INTO [dbo].[TnfLanguageTexts] ([TenantId],[LanguageName],[Source],[Key],[Value],[CreationTime])
VALUES (NULL,'pt-BR','ArchitectureApp','President_Title','Página Inicial',GETDATE())

Note que a tabela contém o campo TenantId. Preencha esta informação caso você esteja trabalhando com Multi-tenancy.