LocalizationProvider.Abstractions 8.2.3

dotnet add package LocalizationProvider.Abstractions --version 8.2.3                
NuGet\Install-Package LocalizationProvider.Abstractions -Version 8.2.3                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="LocalizationProvider.Abstractions" Version="8.2.3" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add LocalizationProvider.Abstractions --version 8.2.3                
#r "nuget: LocalizationProvider.Abstractions, 8.2.3"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install LocalizationProvider.Abstractions as a Cake Addin
#addin nuget:?package=LocalizationProvider.Abstractions&version=8.2.3

// Install LocalizationProvider.Abstractions as a Cake Tool
#tool nuget:?package=LocalizationProvider.Abstractions&version=8.2.3                

Quality Gate Status

Supporting LocalizationProvider

If you find this library useful, cup of coffee would be awesome! You can support further development of the library via Paypal.

Localization Provider v8.0 IS OUT!

I'm pleased to announce that Localization Provider v8.0 is finally out. Again - took a bit longer than expected 😃

What's new?

  • .NET8 set as default target
  • Added provider model for translations - starting with Azure AI for automatic translations
  • ConfigurationContext now supports config configuration as well (you can change some settings after you have added and configured default settings for localization provider). This is very useful in unit test scenarios when you need to adjust some settings for specific test.
  • Various bug fixes
  • Some performance improvements (resource key comparison, pagination in Admin UI)
  • Security improvements (by default upgrading insecure connections)
  • Dependencies upgrade

More info in this blog post.

What is the LocalizationProvider project?

LocalizationProvider project is ASP.NET Mvc web application localization provider on steroids.

Giving you the main following features:

  • Database-driven localization provider for Asp.Net Mvc applications projects
  • Easy resource registrations via code
  • Supports hierarchical resource organization (with help of child classes)
  • Administration UI for editors to change or add new translations for required languages

Getting Started (.NET)

Bare Minimum to Start With

Below are code fragments that are essential to get started with a localization provider.

Install required packages:

> dotnet add package LocalizationProvider.AspNetCore
> dotnet add package LocalizationProvider.AdminUI.AspNetCore
> dotnet add package LocalizationProvider.Storage.SqlServer

Following service configuration (usually in Startup.cs) is required to get the localization provider working:

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        // add your authorization provider (asp.net identity, identity server, whichever..)

        services
            .AddControllersWithViews()
            .AddMvcLocalization();

        services.AddRazorPages();
        services.AddRouting();

        services.AddDbLocalizationProvider(_ =>
        {
            _.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
            ...
        });

        services.AddDbLocalizationProviderAdminUI(_ =>
        {
            ...
        });
    }

    ...
}

And following setup of the application is required as a minimum (also usually located in Startup.cs):

public class Startup
{
    ...

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseRouting();
        app.UseAuthentication();
        app.UseAuthorization();

        app.UseDbLocalizationProvider();
        app.UseDbLocalizationProviderAdminUI();
        app.UseDbLocalizationClientsideProvider(); //assuming that you like also Javascript

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

Also, you can refer to sample app in GitHub for some more hints if needed.

More Detailed Help

Getting Started - Optimizely CMS/Commerce

Working with DbLocalizationProvider Stuff

Integrating with Optimizely

  • For more information about Optimizely integration - read here

Other Versions

Localization Provider v7.x Released

Please read more in this blog post!

More Info

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (20)

Showing the top 5 NuGet packages that depend on LocalizationProvider.Abstractions:

Package Downloads
LocalizationProvider

Database driven localization provider

LocalizationProvider.AspNet

LocalizationProvider support package for Asp.Net

LocalizationProvider.Storage.SqlServer

SqlServer storage implementation for DbLocalizationProvider package

LocalizationProvider.AspNetCore

Database driven localization provider. Asp.Net Core support package

LocalizationProvider.AdminUI.AspNetCore

Database driven localization provider. Admin UI for Asp.Net Core apps.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.2.3 2,336 11/27/2024
8.2.2 1,908 11/15/2024
8.2.1 3,478 11/3/2024
8.2.0 9,338 9/23/2024
8.1.6 8,052 9/2/2024
8.1.5 8,283 8/27/2024
8.1.4 7,564 8/15/2024
8.1.3 1,732 8/13/2024
8.1.2 1,003 8/7/2024
8.1.1 346 8/4/2024
8.1.0 11,298 6/5/2024
8.0.3 11,412 5/5/2024
8.0.2 9,480 3/28/2024
8.0.1 4,492 3/5/2024
8.0.0 6,389 2/17/2024
7.5.2 49,023 12/23/2023
7.5.1 123,651 1/1/2023
7.5.0 23,349 11/12/2022
7.4.0 16,543 9/29/2022
7.3.1 40,190 8/30/2022
7.3.0 24,048 6/9/2022
7.2.1 26,122 3/17/2022
7.2.0 17,653 3/3/2022
7.1.0 7,673 2/10/2022
7.0.0 16,080 1/23/2022
7.0.0-pre-0015 1,332 1/19/2022
7.0.0-pre-0014 1,254 1/16/2022
7.0.0-pre-0013 1,567 12/27/2021
7.0.0-pre-0012 1,469 11/30/2021
7.0.0-pre-0011 2,720 11/26/2021
7.0.0-pre-0010 6,597 11/24/2021
7.0.0-pre-0008 5,763 11/24/2021
7.0.0-pre-0007 7,410 11/23/2021
7.0.0-pre-0006 2,742 10/31/2021
7.0.0-pre-0005 2,185 10/17/2021
7.0.0-pre-0004 1,736 10/4/2021
7.0.0-pre-0003 1,967 9/12/2021
7.0.0-pre-0002 1,724 8/30/2021
7.0.0-pre-0001 1,907 7/25/2021
6.5.3 12,754 5/22/2023
6.5.2 31,278 2/27/2022
6.5.1 2,263 2/27/2022
6.5.0 67,528 5/7/2021
6.4.0 22,507 12/22/2020
6.3.0 6,802 10/27/2020
6.2.2 12,722 9/9/2020
6.2.1 3,328 9/9/2020
6.2.0 39,380 7/9/2020
6.1.0 5,583 6/9/2020
6.0.2 15,863 3/17/2020
6.0.1 2,853 3/16/2020
6.0.0 2,877 2/21/2020
5.8.2 118,061 1/29/2020
5.7.7 40,429 11/23/2019
5.7.5 36,914 9/29/2019
5.7.4 21,722 9/14/2019
5.7.3 5,981 8/16/2019
5.7.1 32,299 7/14/2019
5.7.0 3,442 6/30/2019
5.6.0 12,876 5/7/2019
5.5.1 8,745 4/19/2019
5.5.0 6,033 4/8/2019
5.4.0 13,371 2/28/2019
5.3.0 9,053 2/10/2019
5.1.0 3,992 1/13/2019
5.0.0 22,390 10/18/2018
4.2.2 43,706 4/4/2018
4.2.1 1,318 3/30/2018
4.2.0 2,689 3/3/2018
4.1.0 10,252 1/23/2018
4.0.0 3,054 12/29/2017
2.11.3 5,477 12/21/2017
2.11.1 2,384 12/6/2017
2.11.0 1,773 12/2/2017
2.10.0 2,066 11/26/2017
2.9.0 20,296 10/9/2017
2.8.0 4,961 8/15/2017
2.7.0 5,141 7/5/2017
2.6.2 2,517 6/8/2017
2.6.1 1,871 5/22/2017
2.6.0 3,727 4/24/2017
2.5.0 3,464 3/19/2017
2.3.2 1,883 6/8/2017
2.3.1 1,802 5/22/2017
2.3.0 5,934 2/16/2017
2.2.0 1,196 2/16/2017
2.1.0 5,188 11/3/2016