Skip to content

LazZiya/ExpressLocalization

Repository files navigation

ATTENTION: Due to several major breaking changes in the planned v5, the next version has been moved to a new project! ExpressLocalization will continue to get support and hotfixes. To continue with the next vesion please see:

New project repository: XLocalizer

New project docs: DOCS.Ziyad.info

Sample repository: XLocalizer.Samples

What is ExpressLocalization?

A nuget package to simplify the localization setup of any Asp.Net Core web application.

How to use

Install from nuget :

Install-Package LazZiya.ExpressLocalization

Add ExpressLocalization to startup.cs:

using LazZiya.ExpressLocalization;

public void ConfigureServices(IServiceCollection services)
{    
    var cultures = new CultureInfo[]
    {
        new CultureInfo("en"),
        new CultureInfo("tr"),
        new CultureInfo("ar")
    };

    services.AddRazorPages()
        .AddExpressLocalization<LocalizationResource>(
            ops =>
            {
                ops.ResourcesPath = "LocalizationResources";
                ops.RequestLocalizationOptions = o =>
                {
                    o.SupportedCultures = cultures;
                    o.SupportedUICultures = cultures;
                    o.DefaultRequestCulture = new RequestCulture("en");
                };
            });
}

Then configure the app to use RequestLocalization middleware :

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    // Other codes...
    
    // Add localization middleware to the app
    app.UseRequestLocalization();

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapRazorPages();
    });
}

Setup and options

For all details goto wiki pages

Step by step tutorial

Sample projects

License

MIT