diff --git a/Oqtane.Client/Modules/Admin/Languages/Add.razor b/Oqtane.Client/Modules/Admin/Languages/Add.razor
index 17a02d67..52a958c2 100644
--- a/Oqtane.Client/Modules/Admin/Languages/Add.razor
+++ b/Oqtane.Client/Modules/Admin/Languages/Add.razor
@@ -94,7 +94,6 @@ else
var language = new Language
{
SiteId = PageState.Page.SiteId,
- Name = CultureInfo.GetCultureInfo(_code).DisplayName,
Code = _code,
IsDefault = (_default == null ? false : Boolean.Parse(_default))
};
diff --git a/Oqtane.Server/Controllers/LanguageController.cs b/Oqtane.Server/Controllers/LanguageController.cs
index 6ee66cac..36750b83 100644
--- a/Oqtane.Server/Controllers/LanguageController.cs
+++ b/Oqtane.Server/Controllers/LanguageController.cs
@@ -55,6 +55,10 @@ namespace Oqtane.Controllers
else
{
languages = _languages.GetLanguages(SiteId).ToList();
+ foreach (Language language in languages)
+ {
+ language.Name = CultureInfo.GetCultureInfo(language.Code).DisplayName;
+ }
if (!string.IsNullOrEmpty(packagename))
{
foreach (var file in Directory.EnumerateFiles(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), $"{packagename}*{Constants.SatelliteAssemblyExtension}", SearchOption.AllDirectories))
@@ -85,6 +89,7 @@ namespace Oqtane.Controllers
var language = _languages.GetLanguage(id);
if (language != null && language.SiteId == _alias.SiteId)
{
+ language.Name = CultureInfo.GetCultureInfo(language.Code).DisplayName;
return language;
}
else
diff --git a/Oqtane.Server/Migrations/Tenant/05020401_RemoveLanguageName.cs b/Oqtane.Server/Migrations/Tenant/05020401_RemoveLanguageName.cs
new file mode 100644
index 00000000..063b7027
--- /dev/null
+++ b/Oqtane.Server/Migrations/Tenant/05020401_RemoveLanguageName.cs
@@ -0,0 +1,28 @@
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Oqtane.Databases.Interfaces;
+using Oqtane.Migrations.EntityBuilders;
+using Oqtane.Repository;
+
+namespace Oqtane.Migrations.Tenant
+{
+ [DbContext(typeof(TenantDBContext))]
+ [Migration("Tenant.05.02.04.01")]
+ public class RemoveLanguageName : MultiDatabaseMigration
+ {
+ public RemoveLanguageName(IDatabase database) : base(database)
+ {
+ }
+
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ var languageEntityBuilder = new LanguageEntityBuilder(migrationBuilder, ActiveDatabase);
+ languageEntityBuilder.DropColumn("Name");
+ }
+
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ // not implemented
+ }
+ }
+}
diff --git a/Oqtane.Shared/Models/Language.cs b/Oqtane.Shared/Models/Language.cs
index 82a837ce..b64a9381 100644
--- a/Oqtane.Shared/Models/Language.cs
+++ b/Oqtane.Shared/Models/Language.cs
@@ -19,11 +19,6 @@ namespace Oqtane.Models
///
public int? SiteId { get; set; }
- ///
- /// Language Name - corresponds to , _not_
- ///
- public string Name { get; set; }
-
///
/// Language / Culture code, like 'en-US' - corresponds to
///
@@ -34,6 +29,12 @@ namespace Oqtane.Models
///
public bool IsDefault { get; set; }
+ [NotMapped]
+ ///
+ /// Language Name - corresponds to , _not_
+ ///
+ public string Name { get; set; }
+
[NotMapped]
///
/// Version of the satellite assembly