Aiursoft.Dotlang 8.0.0
ASP.NET Core App Translator
This app helps you generate translated .cshtml
files and resources
files.
How to install
Run the following command to install this tool:
dotnet tool install --global Aiursoft.Dotlang
How does it works
- Find all files ends with
.cshtml
- foreach
cshtml
file, replace all text in tag sround with@Localizer[""]
- Call bing translate API to translate all those content
- Save the translated file as
Resource
file in theResources
folder.
The Core Translator won't override any existing translation nor resources files. If your content was already surrounded with @Localizer[""]
, we won't touch it.
How to run locally
Build:
dotnet pack
Install:
dotnet tool install --global --add-source ./nupkg dotlang
Run:
# In your project folder
$ dotlang
Uninstall:
dotnet tool uninstall -g dotlang
Before running the translator
- Follow the document here ASP.NET Core Localization
Use the following code to register the localizer service:
// In StartUp.cs ConfigureServices method:
services.AddLocalization(options => options.ResourcesPath = "Resources");
services.AddMvc()
.AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix)
.AddDataAnnotationsLocalization();
Use the following code to add localizer middleware:
// In StartUp.cs Configure method
var SupportedCultures = new CultureInfo[]
{
new CultureInfo("en"),
new CultureInfo("zh")
};
app.UseRequestLocalization(new RequestLocalizationOptions
{
DefaultRequestCulture = new RequestCulture(defaultLanguage),
SupportedCultures = SupportedCultures,
SupportedUICultures = SupportedCultures
});
Use the following code to inject localizer:
@using Microsoft.AspNetCore.Mvc.Localization
@inject IViewLocalizer Localizer
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
Now run this app!
Caution
Running this under your project folder may ruin your project! It may change your cshtml
! Do run git commit
under your project before running this app.
This package has no dependencies.
Version | Last updated |
---|---|
9.0.24 | 07/04/2025 |
9.0.23 | 06/26/2025 |
9.0.22 | 06/23/2025 |
9.0.21 | 06/23/2025 |
9.0.20 | 06/23/2025 |
9.0.19 | 06/18/2025 |
9.0.18 | 06/13/2025 |
9.0.17 | 06/12/2025 |
9.0.16 | 06/12/2025 |
9.0.15 | 06/11/2025 |
9.0.13 | 06/11/2025 |
9.0.12 | 06/07/2025 |
9.0.11 | 06/06/2025 |
9.0.10 | 06/02/2025 |
9.0.9 | 06/01/2025 |
9.0.8 | 04/10/2025 |
9.0.7 | 03/12/2025 |
9.0.6 | 06/10/2025 |
9.0.5 | 05/20/2025 |
9.0.4 | 06/12/2025 |
9.0.3 | 05/17/2025 |
9.0.2 | 05/22/2025 |
9.0.1 | 05/22/2025 |
9.0.0 | 04/19/2025 |
8.0.13 | 04/21/2025 |
8.0.12 | 04/02/2025 |
8.0.11 | 06/07/2025 |
8.0.10 | 04/25/2025 |
8.0.9 | 03/26/2025 |
8.0.8 | 04/16/2025 |
8.0.7 | 04/01/2025 |
8.0.6 | 04/03/2025 |
8.0.5 | 04/06/2025 |
8.0.4 | 03/16/2025 |
8.0.3 | 04/01/2025 |
8.0.2 | 04/10/2025 |
8.0.1 | 04/16/2025 |
8.0.0 | 06/07/2025 |
7.0.11 | 04/10/2025 |
7.0.10 | 06/07/2025 |
7.0.9 | 04/25/2025 |
7.0.8 | 04/16/2025 |
7.0.6 | 06/07/2025 |
7.0.5 | 05/04/2025 |
7.0.4 | 03/30/2025 |
7.0.3 | 04/16/2025 |
7.0.2 | 06/07/2025 |
7.0.1 | 04/16/2025 |
7.0.0 | 04/16/2025 |
6.0.2 | 04/16/2025 |
6.0.1 | 04/03/2025 |