diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs index 1e11ecb2f9..5aec31e0b9 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs @@ -278,7 +278,7 @@ public class AbpIoSourceCodeStore : ISourceCodeStore, ITransientDependency } var matches = Regex.Matches(stringBuilder.ToString(), - $"({AppTemplate.TemplateName}|{AppNoLayersTemplate.TemplateName}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip"); + $"({AppTemplate.TemplateName}|{AppNoLayersProTemplate.TemplateName}|{AppNoLayersTemplate.TemplateName}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip"); foreach (Match match in matches) { templateList.Add((match.Groups[1].Value, match.Groups[2].Value)); diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/ProjectRenameStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/ProjectRenameStep.cs index 108b93b3b1..4284fa95bb 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/ProjectRenameStep.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/ProjectRenameStep.cs @@ -25,8 +25,8 @@ public class ProjectRenameStep : ProjectBuildPipelineStep } } - var slnFiles = context.Files.Where(f => f.Name.EndsWith(".sln")); - foreach (var file in slnFiles) + var files = context.Files.Where(f => f.Name.EndsWith(".sln") || f.Name.EndsWith(".cs")); + foreach (var file in files) { file.NormalizeLineEndings(); var lines = file.GetLines(); diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs index 96ad8517b1..230a6018f3 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/TemplateProjectBuildPipelineBuilder.cs @@ -40,7 +40,8 @@ public static class TemplateProjectBuildPipelineBuilder pipeline.Steps.Add(new DatabaseManagementSystemChangeStep(context.Template.As().HasDbMigrations)); // todo: move to custom steps? } - if (context.Template.Name == AppNoLayersTemplate.TemplateName) + if (context.Template.Name == AppNoLayersTemplate.TemplateName || + context.Template.Name == AppNoLayersProTemplate.TemplateName) { pipeline.Steps.Add(new AppNoLayersDatabaseManagementSystemChangeStep()); // todo: move to custom steps? } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs index 8e1504fb8f..d41556812a 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs @@ -54,6 +54,8 @@ public class TemplateInfoProvider : ITemplateInfoProvider, ITransientDependency return new AppTemplate(); case AppNoLayersTemplate.TemplateName: return new AppNoLayersTemplate(); + case AppNoLayersProTemplate.TemplateName: + return new AppNoLayersProTemplate(); case AppProTemplate.TemplateName: return new AppProTemplate(); case MicroserviceProTemplate.TemplateName: diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersProTemplate.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersProTemplate.cs new file mode 100644 index 0000000000..7e7be0143f --- /dev/null +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersProTemplate.cs @@ -0,0 +1,16 @@ +namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; + +public class AppNoLayersProTemplate : AppNoLayersTemplateBase +{ + /// + /// "app-nolayers-pro". + /// + public const string TemplateName = "app-nolayers-pro"; + + public AppNoLayersProTemplate() + : base(TemplateName) + { + //TODO: Change URL + //DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application"; + } +} diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs index c218b2668b..24119c43f2 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs @@ -1,11 +1,6 @@ -using System; -using System.Collections.Generic; -using Volo.Abp.Cli.ProjectBuilding.Building; -using Volo.Abp.Cli.ProjectBuilding.Building.Steps; +namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; -namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; - -public class AppNoLayersTemplate : AppTemplateBase +public class AppNoLayersTemplate : AppNoLayersTemplateBase { /// /// "app-nolayers". @@ -16,86 +11,6 @@ public class AppNoLayersTemplate : AppTemplateBase : base(TemplateName) { //TODO: Change URL - DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application"; - } - - public override IEnumerable GetCustomSteps(ProjectBuildContext context) - { - var steps = new List(); - - switch (context.BuildArgs.DatabaseProvider) - { - case DatabaseProvider.NotSpecified: - case DatabaseProvider.EntityFrameworkCore: - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc.Mongo")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host.Mongo")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server.Mongo")); - break; - case DatabaseProvider.MongoDb: - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); - - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Mvc.Mongo", "MyCompanyName.MyProjectName.Mvc")); - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Host.Mongo", "MyCompanyName.MyProjectName.Host")); - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Blazor.Server.Mongo", "MyCompanyName.MyProjectName.Blazor.Server")); - break; - } - - switch (context.BuildArgs.UiFramework) - { - case UiFramework.Angular: - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Host", "MyCompanyName.MyProjectName")); - break; - - case UiFramework.None: - steps.Add(new RemoveFolderStep("/angular")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Host", "MyCompanyName.MyProjectName")); - break; - - case UiFramework.BlazorServer: - steps.Add(new RemoveFolderStep("/angular")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host")); - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Blazor.Server", "MyCompanyName.MyProjectName")); - break; - - case UiFramework.NotSpecified: - case UiFramework.Mvc: - steps.Add(new RemoveFolderStep("/angular")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host")); - steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); - steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Mvc", "MyCompanyName.MyProjectName")); - break; - - case UiFramework.Blazor: - throw new AbpException("app-nolayers doesn't support blazor wasm."); - break; - } - - //ConfigureTenantSchema(context, steps); - //SwitchDatabaseProvider(context, steps); - //DeleteUnrelatedProjects(context, steps); - steps.Add(new RemoveFolderStep("/aspnet-core/MyCompanyName.MyProjectName/Migrations")); - //RemoveMigrations(context, steps); - //ConfigureTieredArchitecture(context, steps); - //ConfigurePublicWebSite(context, steps); - //RemoveUnnecessaryPorts(context, steps); - RandomizeSslPorts(context, steps); - RandomizeStringEncryption(context, steps); - UpdateNuGetConfig(context, steps); - ChangeConnectionString(context, steps); - //CleanupFolderHierarchy(context, steps); - - if (context.BuildArgs.UiFramework != UiFramework.Angular) - { - steps.Add(new MoveFolderStep("/aspnet-core/", "/")); - } - - return steps; + //DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application"; } } diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplateBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplateBase.cs new file mode 100644 index 0000000000..b9714d9408 --- /dev/null +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplateBase.cs @@ -0,0 +1,94 @@ +using System.Collections.Generic; +using Volo.Abp.Cli.ProjectBuilding.Building; +using Volo.Abp.Cli.ProjectBuilding.Building.Steps; + +namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; + +public abstract class AppNoLayersTemplateBase : AppTemplateBase +{ + protected AppNoLayersTemplateBase(string templateName) + : base(templateName) + { + + } + + public override IEnumerable GetCustomSteps(ProjectBuildContext context) + { + var steps = new List(); + + switch (context.BuildArgs.DatabaseProvider) + { + case DatabaseProvider.NotSpecified: + case DatabaseProvider.EntityFrameworkCore: + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc.Mongo")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host.Mongo")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server.Mongo")); + break; + case DatabaseProvider.MongoDb: + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); + + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Mvc.Mongo", "MyCompanyName.MyProjectName.Mvc")); + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Host.Mongo", "MyCompanyName.MyProjectName.Host")); + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Blazor.Server.Mongo", "MyCompanyName.MyProjectName.Blazor.Server")); + break; + } + + switch (context.BuildArgs.UiFramework) + { + case UiFramework.Angular: + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Host", "MyCompanyName.MyProjectName")); + break; + + case UiFramework.None: + steps.Add(new RemoveFolderStep("/angular")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Host", "MyCompanyName.MyProjectName")); + break; + + case UiFramework.BlazorServer: + steps.Add(new RemoveFolderStep("/angular")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Mvc")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host")); + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Blazor.Server", "MyCompanyName.MyProjectName")); + break; + + case UiFramework.NotSpecified: + case UiFramework.Mvc: + steps.Add(new RemoveFolderStep("/angular")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Host")); + steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Blazor.Server")); + steps.Add(new ProjectRenameStep("MyCompanyName.MyProjectName.Mvc", "MyCompanyName.MyProjectName")); + break; + + case UiFramework.Blazor: + throw new AbpException("app-nolayers doesn't support blazor wasm."); + break; + } + + //ConfigureTenantSchema(context, steps); + //SwitchDatabaseProvider(context, steps); + //DeleteUnrelatedProjects(context, steps); + steps.Add(new RemoveFolderStep("/aspnet-core/MyCompanyName.MyProjectName/Migrations")); + //RemoveMigrations(context, steps); + //ConfigureTieredArchitecture(context, steps); + //ConfigurePublicWebSite(context, steps); + //RemoveUnnecessaryPorts(context, steps); + RandomizeSslPorts(context, steps); + RandomizeStringEncryption(context, steps); + UpdateNuGetConfig(context, steps); + ChangeConnectionString(context, steps); + //CleanupFolderHierarchy(context, steps); + + if (context.BuildArgs.UiFramework != UiFramework.Angular) + { + steps.Add(new MoveFolderStep("/aspnet-core/", "/")); + } + + return steps; + } +} diff --git a/templates/app-nolayers/angular/src/app/home/home.component.html b/templates/app-nolayers/angular/src/app/home/home.component.html index 39c197e4ca..ae58ba4051 100644 --- a/templates/app-nolayers/angular/src/app/home/home.component.html +++ b/templates/app-nolayers/angular/src/app/home/home.component.html @@ -1,333 +1,12 @@ -
-
- \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ar.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ar.json index 9fe7e951d9..1ee94530fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ar.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ar.json @@ -2,6 +2,7 @@ "culture": "ar", "texts": { "Welcome_Title": "مرحبا", - "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP.", + "Menu:Home": "الرئيسية" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/cs.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/cs.json index d45dfff9a0..524a48e4eb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/cs.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/cs.json @@ -2,6 +2,7 @@ "culture": "cs", "texts": { "Welcome_Title": "Vítejte", - "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework." + "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework.", + "Menu:Home": "Úvod" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/de-DE.json index e325aa3949..da374cd84c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/de-DE.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/de-DE.json @@ -2,6 +2,7 @@ "culture": "de-DE", "texts": { "Welcome_Title": "Willkommen", - "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en-GB.json index 30407ce214..cf24737f24 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en-GB.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en-GB.json @@ -2,6 +2,7 @@ "culture": "en-GB", "texts": { "Welcome_Title": "Welcome_Title", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en.json index 114854aabf..3ee17295cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/en.json @@ -2,6 +2,7 @@ "culture": "en", "texts": { "Welcome_Title": "Welcome", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/es.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/es.json index dbc2280cdc..6e138d3e1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/es.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/es.json @@ -2,6 +2,7 @@ "culture": "es", "texts": { "Welcome_Title": "Bienvenido", - "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework." + "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework.", + "Menu:Home": "Inicio" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fi.json index 96f8386846..e963857efc 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fi.json @@ -2,6 +2,7 @@ "culture": "fi", "texts": { "Welcome_Title": "Tervetuloa", - "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille.", + "Menu:Home": "Koti" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fr.json index 6148d1fa13..b2c2b620f7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/fr.json @@ -2,6 +2,7 @@ "culture": "fr", "texts": { "Welcome_Title": "Bienvenue", - "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP." + "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP.", + "Menu:Home": "Accueil" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hi.json index c741e93703..ec16d655b5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hi.json @@ -2,6 +2,7 @@ "culture": "hi", "texts": { "Welcome_Title": "स्वागत हे", - "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।", + "Menu:Home": "घर" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hu.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hu.json index cf9f2e7b09..fa6f372175 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hu.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/hu.json @@ -2,6 +2,7 @@ "culture": "hu", "texts": { "Welcome_Title": "Üdvözlöm", - "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez.", + "Menu:Home": "Kezdőlap" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/is.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/is.json index 41b8ed6afb..080c0baca2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/is.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/is.json @@ -2,6 +2,7 @@ "culture": "is", "texts": { "Welcome_Title": "Velkomin", - "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework.", + "Menu:Home": "Heim" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/it.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/it.json index 8722bc73c1..57c3cf63d4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/it.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/it.json @@ -2,6 +2,7 @@ "culture": "it", "texts": { "Welcome_Title": "Benvenuto", - "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/nl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/nl.json index e798081c42..525ee02d10 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/nl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/nl.json @@ -2,6 +2,7 @@ "culture": "nl", "texts": { "Welcome_Title": "Welkom", - "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pl-PL.json index ba7c3764ee..2ebf70a5e1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pl-PL.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pl-PL.json @@ -2,6 +2,7 @@ "culture": "pl-PL", "texts": { "Welcome_Title": "Witaj", - "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pt-BR.json index 1e45a233c9..96e45d3c3e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pt-BR.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/pt-BR.json @@ -2,6 +2,7 @@ "culture": "pt-BR", "texts": { "Welcome_Title": "Seja bem-vindo!", - "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework." + "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework.", + "Menu:Home": "Principal" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ro-RO.json index bd31e2cbd6..48102a75b7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ro-RO.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ro-RO.json @@ -2,6 +2,7 @@ "culture": "ro-RO", "texts": { "Welcome_Title": "Bun venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Acasă" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ru.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ru.json index 82ed95eaf8..eb4cc96b5d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ru.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/ru.json @@ -2,6 +2,7 @@ "culture": "ru", "texts": { "Welcome_Title": "Bine ati venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Главная" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sk.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sk.json index cdaf8e7c3d..227d0a74cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sk.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sk.json @@ -2,6 +2,7 @@ "culture": "sk", "texts": { "Welcome_Title": "Vitajte", - "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP." + "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP.", + "Menu:Home": "Domov" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sl.json index 5d595a4910..29876afa0c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/sl.json @@ -2,6 +2,7 @@ "culture": "sl", "texts": { "Welcome_Title": "Dobrodošli", - "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework.", + "Menu:Home": "Domov" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/tr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/tr.json index 06a30cd6b9..6cbdac76a2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/tr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/tr.json @@ -2,6 +2,7 @@ "culture": "tr", "texts": { "Welcome_Title": "Hoşgeldiniz", - "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur." + "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur.", + "Menu:Home": "Ana sayfa" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/vi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/vi.json index 9e61a67f6c..f2e55bd7b0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/vi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/vi.json @@ -2,6 +2,7 @@ "culture": "vi", "texts": { "Welcome_Title": "Chào mừng bạn", - "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework." + "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework.", + "Menu:Home": "Trang chủ" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hans.json index c0dcb66f0a..6a66abeb9c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hans.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hans.json @@ -1,7 +1,8 @@ { "culture": "zh-Hans", - "texts": { + "texts": { "Welcome_Title": "欢迎", - "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." - } - } \ No newline at end of file + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板.", + "Menu:Home": "首页" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hant.json index fe347fedb9..7b4872c974 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hant.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Localization/MyProjectName/zh-Hant.json @@ -1,7 +1,8 @@ { "culture": "zh-Hant", - "texts": { + "texts": { "Welcome_Title": "歡迎", - "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." - } - } \ No newline at end of file + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板.", + "Menu:Home": "首頁" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Menus/MyProjectNameMenuContributor.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Menus/MyProjectNameMenuContributor.cs new file mode 100644 index 0000000000..2a32b76193 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Menus/MyProjectNameMenuContributor.cs @@ -0,0 +1,46 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Identity.Blazor; +using Volo.Abp.SettingManagement.Blazor.Menus; +using Volo.Abp.TenantManagement.Blazor.Navigation; +using Volo.Abp.UI.Navigation; + +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenuContributor : IMenuContributor +{ + public async Task ConfigureMenuAsync(MenuConfigurationContext context) + { + if (context.Menu.Name == StandardMenus.Main) + { + await ConfigureMainMenuAsync(context); + } + } + + private Task ConfigureMainMenuAsync(MenuConfigurationContext context) + { + var administration = context.Menu.GetAdministration(); + var l = context.GetLocalizer(); + + context.Menu.Items.Insert( + 0, + new ApplicationMenuItem( + MyProjectNameMenus.Home, + l["Menu:Home"], + "/", + icon: "fas fa-home", + order: 0 + ) + ); + + if (MyProjectNameModule.IsMultiTenant) + { + administration.SetSubItemOrder(TenantManagementMenuNames.GroupName, 1); + } + else + { + administration.TryRemoveMenuItem(TenantManagementMenuNames.GroupName); + } + + return Task.CompletedTask; + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Menus/MyProjectNameMenus.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Menus/MyProjectNameMenus.cs new file mode 100644 index 0000000000..4c964afb14 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/Menus/MyProjectNameMenus.cs @@ -0,0 +1,10 @@ +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenus +{ + private const string Prefix = "MyProjectName"; + public const string Home = Prefix + ".Home"; + + //Add your menu items here... + +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameBrandingProvider.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameBrandingProvider.cs new file mode 100644 index 0000000000..fb6e75d065 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameBrandingProvider.cs @@ -0,0 +1,10 @@ +using Volo.Abp.DependencyInjection; +using Volo.Abp.Ui.Branding; + +namespace MyCompanyName.MyProjectName; + +[Dependency(ReplaceServices = true)] +public class MyProjectNameBrandingProvider : DefaultBrandingProvider +{ + public override string AppName => "MyProjectName"; +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs index 1c2fc318ca..1c235e76ff 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs @@ -3,6 +3,7 @@ using Blazorise.Icons.FontAwesome; using Microsoft.OpenApi.Models; using MyCompanyName.MyProjectName.Data; using MyCompanyName.MyProjectName.Localization; +using MyCompanyName.MyProjectName.Menus; using Volo.Abp; using Volo.Abp.Account; using Volo.Abp.Account.Web; @@ -28,6 +29,7 @@ using Volo.Abp.Identity.Blazor.Server; using Volo.Abp.Identity.MongoDB; using Volo.Abp.IdentityServer.MongoDB; using Volo.Abp.Localization; +using Volo.Abp.Localization.ExceptionHandling; using Volo.Abp.Modularity; using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.MongoDB; @@ -40,9 +42,11 @@ using Volo.Abp.Swashbuckle; using Volo.Abp.TenantManagement; using Volo.Abp.TenantManagement.Blazor.Server; using Volo.Abp.TenantManagement.MongoDB; +using Volo.Abp.UI.Navigation; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.Uow; using Volo.Abp.Validation.Localization; +using Volo.Abp.VirtualFileSystem; namespace MyCompanyName.MyProjectName; @@ -99,7 +103,7 @@ namespace MyCompanyName.MyProjectName; public class MyProjectNameModule : AbpModule { /* Single point to enable/disable multi-tenancy */ - private const bool IsMultiTenant = true; + public const bool IsMultiTenant = true; public override void PreConfigureServices(ServiceConfigurationContext context) { @@ -120,8 +124,10 @@ public class MyProjectNameModule : AbpModule ConfigureUrls(configuration); ConfigureBundles(); ConfigureAutoMapper(); + ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalizationServices(); ConfigureSwaggerServices(context.Services); + ConfigureNavigationServices(); ConfigureAutoApiControllers(); ConfigureBlazorise(context); ConfigureRouter(context); @@ -158,7 +164,7 @@ public class MyProjectNameModule : AbpModule { bundle.AddFiles("/blazor-global-styles.css"); //You can remove the following line if you don't use Blazor CSS isolation for components - bundle.AddFiles("/MyCompanyName.MyProjectName.styles.css"); + bundle.AddFiles("/MyCompanyName.MyProjectName.Blazor.Server.styles.css"); } ); }); @@ -206,6 +212,24 @@ public class MyProjectNameModule : AbpModule options.Languages.Add(new LanguageInfo("de-DE", "de-DE", "Deutsch", "de")); options.Languages.Add(new LanguageInfo("es", "es", "Español")); }); + + Configure(options => + { + options.MapCodeNamespace("MyProjectName", typeof(MyProjectNameResource)); + }); + } + + private void ConfigureVirtualFiles(IWebHostEnvironment hostingEnvironment) + { + Configure(options => + { + options.FileSets.AddEmbedded(); + if (hostingEnvironment.IsDevelopment()) + { + /* Using physical files in development, so we don't need to recompile on changes */ + options.FileSets.ReplaceEmbeddedByPhysical(hostingEnvironment.ContentRootPath); + } + }); } private void ConfigureSwaggerServices(IServiceCollection services) @@ -235,6 +259,14 @@ public class MyProjectNameModule : AbpModule }); } + private void ConfigureNavigationServices() + { + Configure(options => + { + options.MenuContributors.Add(new MyProjectNameMenuContributor()); + }); + } + private void ConfigureAutoApiControllers() { Configure(options => diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Data/MyProjectNameDbMigrationService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Data/MyProjectNameDbMigrationService.cs index a0e15a7fd1..eeffd14d64 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Data/MyProjectNameDbMigrationService.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Data/MyProjectNameDbMigrationService.cs @@ -181,7 +181,7 @@ public class MyProjectNameDbMigrationService : ITransientDependency throw new Exception("Solution folder not found!"); } - return Path.Combine(slnDirectoryPath, "MyCompanyName.MyProjectName"); + return Path.Combine(slnDirectoryPath, "MyCompanyName.MyProjectName.Blazor.Server"); } private string GetSolutionDirectoryPath() diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ar.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ar.json index 9fe7e951d9..1ee94530fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ar.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ar.json @@ -2,6 +2,7 @@ "culture": "ar", "texts": { "Welcome_Title": "مرحبا", - "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP.", + "Menu:Home": "الرئيسية" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/cs.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/cs.json index d45dfff9a0..524a48e4eb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/cs.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/cs.json @@ -2,6 +2,7 @@ "culture": "cs", "texts": { "Welcome_Title": "Vítejte", - "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework." + "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework.", + "Menu:Home": "Úvod" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/de-DE.json index e325aa3949..da374cd84c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/de-DE.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/de-DE.json @@ -2,6 +2,7 @@ "culture": "de-DE", "texts": { "Welcome_Title": "Willkommen", - "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en-GB.json index 30407ce214..cf24737f24 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en-GB.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en-GB.json @@ -2,6 +2,7 @@ "culture": "en-GB", "texts": { "Welcome_Title": "Welcome_Title", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en.json index 114854aabf..3ee17295cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/en.json @@ -2,6 +2,7 @@ "culture": "en", "texts": { "Welcome_Title": "Welcome", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/es.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/es.json index dbc2280cdc..6e138d3e1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/es.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/es.json @@ -2,6 +2,7 @@ "culture": "es", "texts": { "Welcome_Title": "Bienvenido", - "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework." + "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework.", + "Menu:Home": "Inicio" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fi.json index 96f8386846..e963857efc 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fi.json @@ -2,6 +2,7 @@ "culture": "fi", "texts": { "Welcome_Title": "Tervetuloa", - "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille.", + "Menu:Home": "Koti" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fr.json index 6148d1fa13..b2c2b620f7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/fr.json @@ -2,6 +2,7 @@ "culture": "fr", "texts": { "Welcome_Title": "Bienvenue", - "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP." + "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP.", + "Menu:Home": "Accueil" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hi.json index c741e93703..ec16d655b5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hi.json @@ -2,6 +2,7 @@ "culture": "hi", "texts": { "Welcome_Title": "स्वागत हे", - "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।", + "Menu:Home": "घर" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hu.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hu.json index cf9f2e7b09..fa6f372175 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hu.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/hu.json @@ -2,6 +2,7 @@ "culture": "hu", "texts": { "Welcome_Title": "Üdvözlöm", - "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez.", + "Menu:Home": "Kezdőlap" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/is.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/is.json index 41b8ed6afb..080c0baca2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/is.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/is.json @@ -2,6 +2,7 @@ "culture": "is", "texts": { "Welcome_Title": "Velkomin", - "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework.", + "Menu:Home": "Heim" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/it.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/it.json index 8722bc73c1..57c3cf63d4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/it.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/it.json @@ -2,6 +2,7 @@ "culture": "it", "texts": { "Welcome_Title": "Benvenuto", - "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/nl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/nl.json index e798081c42..525ee02d10 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/nl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/nl.json @@ -2,6 +2,7 @@ "culture": "nl", "texts": { "Welcome_Title": "Welkom", - "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pl-PL.json index ba7c3764ee..2ebf70a5e1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pl-PL.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pl-PL.json @@ -2,6 +2,7 @@ "culture": "pl-PL", "texts": { "Welcome_Title": "Witaj", - "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pt-BR.json index 1e45a233c9..96e45d3c3e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pt-BR.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/pt-BR.json @@ -2,6 +2,7 @@ "culture": "pt-BR", "texts": { "Welcome_Title": "Seja bem-vindo!", - "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework." + "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework.", + "Menu:Home": "Principal" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ro-RO.json index bd31e2cbd6..48102a75b7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ro-RO.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ro-RO.json @@ -2,6 +2,7 @@ "culture": "ro-RO", "texts": { "Welcome_Title": "Bun venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Acasă" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ru.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ru.json index 82ed95eaf8..eb4cc96b5d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ru.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/ru.json @@ -2,6 +2,7 @@ "culture": "ru", "texts": { "Welcome_Title": "Bine ati venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Главная" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sk.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sk.json index cdaf8e7c3d..227d0a74cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sk.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sk.json @@ -2,6 +2,7 @@ "culture": "sk", "texts": { "Welcome_Title": "Vitajte", - "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP." + "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP.", + "Menu:Home": "Domov" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sl.json index 5d595a4910..29876afa0c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/sl.json @@ -2,6 +2,7 @@ "culture": "sl", "texts": { "Welcome_Title": "Dobrodošli", - "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework.", + "Menu:Home": "Domov" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/tr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/tr.json index 06a30cd6b9..6cbdac76a2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/tr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/tr.json @@ -2,6 +2,7 @@ "culture": "tr", "texts": { "Welcome_Title": "Hoşgeldiniz", - "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur." + "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur.", + "Menu:Home": "Ana sayfa" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/vi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/vi.json index 9e61a67f6c..f2e55bd7b0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/vi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/vi.json @@ -2,6 +2,7 @@ "culture": "vi", "texts": { "Welcome_Title": "Chào mừng bạn", - "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework." + "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework.", + "Menu:Home": "Trang chủ" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hans.json index c0dcb66f0a..6a66abeb9c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hans.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hans.json @@ -1,7 +1,8 @@ { "culture": "zh-Hans", - "texts": { + "texts": { "Welcome_Title": "欢迎", - "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." - } - } \ No newline at end of file + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板.", + "Menu:Home": "首页" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hant.json index fe347fedb9..7b4872c974 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hant.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Localization/MyProjectName/zh-Hant.json @@ -1,7 +1,8 @@ { "culture": "zh-Hant", - "texts": { + "texts": { "Welcome_Title": "歡迎", - "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." - } - } \ No newline at end of file + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板.", + "Menu:Home": "首頁" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Menus/MyProjectNameMenuContributor.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Menus/MyProjectNameMenuContributor.cs new file mode 100644 index 0000000000..2a32b76193 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Menus/MyProjectNameMenuContributor.cs @@ -0,0 +1,46 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Identity.Blazor; +using Volo.Abp.SettingManagement.Blazor.Menus; +using Volo.Abp.TenantManagement.Blazor.Navigation; +using Volo.Abp.UI.Navigation; + +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenuContributor : IMenuContributor +{ + public async Task ConfigureMenuAsync(MenuConfigurationContext context) + { + if (context.Menu.Name == StandardMenus.Main) + { + await ConfigureMainMenuAsync(context); + } + } + + private Task ConfigureMainMenuAsync(MenuConfigurationContext context) + { + var administration = context.Menu.GetAdministration(); + var l = context.GetLocalizer(); + + context.Menu.Items.Insert( + 0, + new ApplicationMenuItem( + MyProjectNameMenus.Home, + l["Menu:Home"], + "/", + icon: "fas fa-home", + order: 0 + ) + ); + + if (MyProjectNameModule.IsMultiTenant) + { + administration.SetSubItemOrder(TenantManagementMenuNames.GroupName, 1); + } + else + { + administration.TryRemoveMenuItem(TenantManagementMenuNames.GroupName); + } + + return Task.CompletedTask; + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Menus/MyProjectNameMenus.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Menus/MyProjectNameMenus.cs new file mode 100644 index 0000000000..4c964afb14 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/Menus/MyProjectNameMenus.cs @@ -0,0 +1,10 @@ +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenus +{ + private const string Prefix = "MyProjectName"; + public const string Home = Prefix + ".Home"; + + //Add your menu items here... + +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameBrandingProvider.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameBrandingProvider.cs new file mode 100644 index 0000000000..fb6e75d065 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameBrandingProvider.cs @@ -0,0 +1,10 @@ +using Volo.Abp.DependencyInjection; +using Volo.Abp.Ui.Branding; + +namespace MyCompanyName.MyProjectName; + +[Dependency(ReplaceServices = true)] +public class MyProjectNameBrandingProvider : DefaultBrandingProvider +{ + public override string AppName => "MyProjectName"; +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs index f810b7efc3..fff0543985 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs @@ -3,6 +3,7 @@ using Blazorise.Icons.FontAwesome; using Microsoft.OpenApi.Models; using MyCompanyName.MyProjectName.Data; using MyCompanyName.MyProjectName.Localization; +using MyCompanyName.MyProjectName.Menus; using Volo.Abp; using Volo.Abp.Account; using Volo.Abp.Account.Web; @@ -29,6 +30,7 @@ using Volo.Abp.Identity.Blazor.Server; using Volo.Abp.Identity.EntityFrameworkCore; using Volo.Abp.IdentityServer.EntityFrameworkCore; using Volo.Abp.Localization; +using Volo.Abp.Localization.ExceptionHandling; using Volo.Abp.Modularity; using Volo.Abp.PermissionManagement; using Volo.Abp.PermissionManagement.EntityFrameworkCore; @@ -41,8 +43,10 @@ using Volo.Abp.Swashbuckle; using Volo.Abp.TenantManagement; using Volo.Abp.TenantManagement.Blazor.Server; using Volo.Abp.TenantManagement.EntityFrameworkCore; +using Volo.Abp.UI.Navigation; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.Validation.Localization; +using Volo.Abp.VirtualFileSystem; namespace MyCompanyName.MyProjectName; @@ -100,7 +104,7 @@ namespace MyCompanyName.MyProjectName; public class MyProjectNameModule : AbpModule { /* Single point to enable/disable multi-tenancy */ - private const bool IsMultiTenant = true; + public const bool IsMultiTenant = true; public override void PreConfigureServices(ServiceConfigurationContext context) { @@ -121,8 +125,10 @@ public class MyProjectNameModule : AbpModule ConfigureUrls(configuration); ConfigureBundles(); ConfigureAutoMapper(); + ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalizationServices(); ConfigureSwaggerServices(context.Services); + ConfigureNavigationServices(); ConfigureAutoApiControllers(); ConfigureBlazorise(context); ConfigureRouter(context); @@ -159,7 +165,7 @@ public class MyProjectNameModule : AbpModule { bundle.AddFiles("/blazor-global-styles.css"); //You can remove the following line if you don't use Blazor CSS isolation for components - bundle.AddFiles("/MyCompanyName.MyProjectName.styles.css"); + bundle.AddFiles("/MyCompanyName.MyProjectName.Blazor.Server.styles.css"); } ); }); @@ -207,6 +213,24 @@ public class MyProjectNameModule : AbpModule options.Languages.Add(new LanguageInfo("de-DE", "de-DE", "Deutsch", "de")); options.Languages.Add(new LanguageInfo("es", "es", "Español")); }); + + Configure(options => + { + options.MapCodeNamespace("MyProjectName", typeof(MyProjectNameResource)); + }); + } + + private void ConfigureVirtualFiles(IWebHostEnvironment hostingEnvironment) + { + Configure(options => + { + options.FileSets.AddEmbedded(); + if (hostingEnvironment.IsDevelopment()) + { + /* Using physical files in development, so we don't need to recompile on changes */ + options.FileSets.ReplaceEmbeddedByPhysical(hostingEnvironment.ContentRootPath); + } + }); } private void ConfigureSwaggerServices(IServiceCollection services) @@ -236,6 +260,14 @@ public class MyProjectNameModule : AbpModule }); } + private void ConfigureNavigationServices() + { + Configure(options => + { + options.MenuContributors.Add(new MyProjectNameMenuContributor()); + }); + } + private void ConfigureAutoApiControllers() { Configure(options => diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ar.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ar.json index 9fe7e951d9..1ee94530fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ar.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ar.json @@ -2,6 +2,7 @@ "culture": "ar", "texts": { "Welcome_Title": "مرحبا", - "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP.", + "Menu:Home": "الرئيسية" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/cs.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/cs.json index d45dfff9a0..524a48e4eb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/cs.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/cs.json @@ -2,6 +2,7 @@ "culture": "cs", "texts": { "Welcome_Title": "Vítejte", - "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework." + "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework.", + "Menu:Home": "Úvod" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/de-DE.json index e325aa3949..da374cd84c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/de-DE.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/de-DE.json @@ -2,6 +2,7 @@ "culture": "de-DE", "texts": { "Welcome_Title": "Willkommen", - "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en-GB.json index 30407ce214..cf24737f24 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en-GB.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en-GB.json @@ -2,6 +2,7 @@ "culture": "en-GB", "texts": { "Welcome_Title": "Welcome_Title", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en.json index 114854aabf..3ee17295cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/en.json @@ -2,6 +2,7 @@ "culture": "en", "texts": { "Welcome_Title": "Welcome", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/es.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/es.json index dbc2280cdc..6e138d3e1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/es.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/es.json @@ -2,6 +2,7 @@ "culture": "es", "texts": { "Welcome_Title": "Bienvenido", - "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework." + "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework.", + "Menu:Home": "Inicio" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fi.json index 96f8386846..e963857efc 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fi.json @@ -2,6 +2,7 @@ "culture": "fi", "texts": { "Welcome_Title": "Tervetuloa", - "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille.", + "Menu:Home": "Koti" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fr.json index 6148d1fa13..b2c2b620f7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/fr.json @@ -2,6 +2,7 @@ "culture": "fr", "texts": { "Welcome_Title": "Bienvenue", - "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP." + "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP.", + "Menu:Home": "Accueil" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hi.json index c741e93703..ec16d655b5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hi.json @@ -2,6 +2,7 @@ "culture": "hi", "texts": { "Welcome_Title": "स्वागत हे", - "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।", + "Menu:Home": "घर" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hu.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hu.json index cf9f2e7b09..fa6f372175 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hu.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/hu.json @@ -2,6 +2,7 @@ "culture": "hu", "texts": { "Welcome_Title": "Üdvözlöm", - "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez.", + "Menu:Home": "Kezdőlap" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/is.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/is.json index 41b8ed6afb..080c0baca2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/is.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/is.json @@ -2,6 +2,7 @@ "culture": "is", "texts": { "Welcome_Title": "Velkomin", - "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework.", + "Menu:Home": "Heim" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/it.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/it.json index 8722bc73c1..57c3cf63d4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/it.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/it.json @@ -2,6 +2,7 @@ "culture": "it", "texts": { "Welcome_Title": "Benvenuto", - "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/nl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/nl.json index e798081c42..525ee02d10 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/nl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/nl.json @@ -2,6 +2,7 @@ "culture": "nl", "texts": { "Welcome_Title": "Welkom", - "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pl-PL.json index ba7c3764ee..2ebf70a5e1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pl-PL.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pl-PL.json @@ -2,6 +2,7 @@ "culture": "pl-PL", "texts": { "Welcome_Title": "Witaj", - "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pt-BR.json index 1e45a233c9..96e45d3c3e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pt-BR.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/pt-BR.json @@ -2,6 +2,7 @@ "culture": "pt-BR", "texts": { "Welcome_Title": "Seja bem-vindo!", - "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework." + "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework.", + "Menu:Home": "Principal" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ro-RO.json index bd31e2cbd6..48102a75b7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ro-RO.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ro-RO.json @@ -2,6 +2,7 @@ "culture": "ro-RO", "texts": { "Welcome_Title": "Bun venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Acasă" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ru.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ru.json index 82ed95eaf8..eb4cc96b5d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ru.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/ru.json @@ -2,6 +2,7 @@ "culture": "ru", "texts": { "Welcome_Title": "Bine ati venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Главная" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sk.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sk.json index cdaf8e7c3d..227d0a74cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sk.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sk.json @@ -2,6 +2,7 @@ "culture": "sk", "texts": { "Welcome_Title": "Vitajte", - "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP." + "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP.", + "Menu:Home": "Domov" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sl.json index 5d595a4910..29876afa0c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/sl.json @@ -2,6 +2,7 @@ "culture": "sl", "texts": { "Welcome_Title": "Dobrodošli", - "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework.", + "Menu:Home": "Domov" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/tr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/tr.json index 06a30cd6b9..6cbdac76a2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/tr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/tr.json @@ -2,6 +2,7 @@ "culture": "tr", "texts": { "Welcome_Title": "Hoşgeldiniz", - "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur." + "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur.", + "Menu:Home": "Ana sayfa" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/vi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/vi.json index 9e61a67f6c..f2e55bd7b0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/vi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/vi.json @@ -2,6 +2,7 @@ "culture": "vi", "texts": { "Welcome_Title": "Chào mừng bạn", - "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework." + "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework.", + "Menu:Home": "Trang chủ" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hans.json index c0dcb66f0a..6a66abeb9c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hans.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hans.json @@ -1,7 +1,8 @@ { "culture": "zh-Hans", - "texts": { + "texts": { "Welcome_Title": "欢迎", - "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." - } - } \ No newline at end of file + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板.", + "Menu:Home": "首页" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hant.json index fe347fedb9..7b4872c974 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hant.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/Localization/MyProjectName/zh-Hant.json @@ -1,7 +1,8 @@ { "culture": "zh-Hant", - "texts": { + "texts": { "Welcome_Title": "歡迎", - "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." - } - } \ No newline at end of file + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板.", + "Menu:Home": "首頁" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs index cb7a823d48..999dab346e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs @@ -41,6 +41,7 @@ using Volo.Abp.TenantManagement.MongoDB; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.Uow; using Volo.Abp.Validation.Localization; +using Volo.Abp.VirtualFileSystem; namespace MyCompanyName.MyProjectName; @@ -117,6 +118,7 @@ public class MyProjectNameModule : AbpModule ConfigureAutoMapper(); ConfigureSwagger(context.Services); ConfigureAutoApiControllers(); + ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalization(); ConfigureAuthentication(context.Services, configuration); ConfigureCors(context, configuration); @@ -204,6 +206,19 @@ public class MyProjectNameModule : AbpModule }); } + private void ConfigureVirtualFiles(IWebHostEnvironment hostingEnvironment) + { + Configure(options => + { + options.FileSets.AddEmbedded(); + if (hostingEnvironment.IsDevelopment()) + { + /* Using physical files in development, so we don't need to recompile on changes */ + options.FileSets.ReplaceEmbeddedByPhysical(hostingEnvironment.ContentRootPath); + } + }); + } + private void ConfigureAutoApiControllers() { Configure(options => diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Data/MyProjectNameDbMigrationService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Data/MyProjectNameDbMigrationService.cs index a0e15a7fd1..b0b929dcc9 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Data/MyProjectNameDbMigrationService.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Data/MyProjectNameDbMigrationService.cs @@ -181,7 +181,7 @@ public class MyProjectNameDbMigrationService : ITransientDependency throw new Exception("Solution folder not found!"); } - return Path.Combine(slnDirectoryPath, "MyCompanyName.MyProjectName"); + return Path.Combine(slnDirectoryPath, "MyCompanyName.MyProjectName.Host"); } private string GetSolutionDirectoryPath() diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ar.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ar.json index 9fe7e951d9..1ee94530fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ar.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ar.json @@ -2,6 +2,7 @@ "culture": "ar", "texts": { "Welcome_Title": "مرحبا", - "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP.", + "Menu:Home": "الرئيسية" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/cs.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/cs.json index d45dfff9a0..524a48e4eb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/cs.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/cs.json @@ -2,6 +2,7 @@ "culture": "cs", "texts": { "Welcome_Title": "Vítejte", - "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework." + "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework.", + "Menu:Home": "Úvod" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/de-DE.json index e325aa3949..da374cd84c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/de-DE.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/de-DE.json @@ -2,6 +2,7 @@ "culture": "de-DE", "texts": { "Welcome_Title": "Willkommen", - "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en-GB.json index 30407ce214..cf24737f24 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en-GB.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en-GB.json @@ -2,6 +2,7 @@ "culture": "en-GB", "texts": { "Welcome_Title": "Welcome_Title", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en.json index 114854aabf..3ee17295cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/en.json @@ -2,6 +2,7 @@ "culture": "en", "texts": { "Welcome_Title": "Welcome", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/es.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/es.json index dbc2280cdc..6e138d3e1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/es.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/es.json @@ -2,6 +2,7 @@ "culture": "es", "texts": { "Welcome_Title": "Bienvenido", - "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework." + "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework.", + "Menu:Home": "Inicio" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fi.json index 96f8386846..e963857efc 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fi.json @@ -2,6 +2,7 @@ "culture": "fi", "texts": { "Welcome_Title": "Tervetuloa", - "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille.", + "Menu:Home": "Koti" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fr.json index 6148d1fa13..b2c2b620f7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/fr.json @@ -2,6 +2,7 @@ "culture": "fr", "texts": { "Welcome_Title": "Bienvenue", - "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP." + "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP.", + "Menu:Home": "Accueil" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hi.json index c741e93703..ec16d655b5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hi.json @@ -2,6 +2,7 @@ "culture": "hi", "texts": { "Welcome_Title": "स्वागत हे", - "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।", + "Menu:Home": "घर" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hu.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hu.json index cf9f2e7b09..fa6f372175 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hu.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/hu.json @@ -2,6 +2,7 @@ "culture": "hu", "texts": { "Welcome_Title": "Üdvözlöm", - "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez.", + "Menu:Home": "Kezdőlap" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/is.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/is.json index 41b8ed6afb..080c0baca2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/is.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/is.json @@ -2,6 +2,7 @@ "culture": "is", "texts": { "Welcome_Title": "Velkomin", - "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework.", + "Menu:Home": "Heim" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/it.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/it.json index 8722bc73c1..57c3cf63d4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/it.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/it.json @@ -2,6 +2,7 @@ "culture": "it", "texts": { "Welcome_Title": "Benvenuto", - "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/nl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/nl.json index e798081c42..525ee02d10 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/nl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/nl.json @@ -2,6 +2,7 @@ "culture": "nl", "texts": { "Welcome_Title": "Welkom", - "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pl-PL.json index ba7c3764ee..2ebf70a5e1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pl-PL.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pl-PL.json @@ -2,6 +2,7 @@ "culture": "pl-PL", "texts": { "Welcome_Title": "Witaj", - "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pt-BR.json index 1e45a233c9..96e45d3c3e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pt-BR.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/pt-BR.json @@ -2,6 +2,7 @@ "culture": "pt-BR", "texts": { "Welcome_Title": "Seja bem-vindo!", - "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework." + "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework.", + "Menu:Home": "Principal" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ro-RO.json index bd31e2cbd6..48102a75b7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ro-RO.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ro-RO.json @@ -2,6 +2,7 @@ "culture": "ro-RO", "texts": { "Welcome_Title": "Bun venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Acasă" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ru.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ru.json index 82ed95eaf8..eb4cc96b5d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ru.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/ru.json @@ -2,6 +2,7 @@ "culture": "ru", "texts": { "Welcome_Title": "Bine ati venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Главная" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sk.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sk.json index cdaf8e7c3d..227d0a74cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sk.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sk.json @@ -2,6 +2,7 @@ "culture": "sk", "texts": { "Welcome_Title": "Vitajte", - "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP." + "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP.", + "Menu:Home": "Domov" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sl.json index 5d595a4910..29876afa0c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/sl.json @@ -2,6 +2,7 @@ "culture": "sl", "texts": { "Welcome_Title": "Dobrodošli", - "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework.", + "Menu:Home": "Domov" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/tr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/tr.json index 06a30cd6b9..6cbdac76a2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/tr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/tr.json @@ -2,6 +2,7 @@ "culture": "tr", "texts": { "Welcome_Title": "Hoşgeldiniz", - "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur." + "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur.", + "Menu:Home": "Ana sayfa" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/vi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/vi.json index 9e61a67f6c..f2e55bd7b0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/vi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/vi.json @@ -2,6 +2,7 @@ "culture": "vi", "texts": { "Welcome_Title": "Chào mừng bạn", - "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework." + "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework.", + "Menu:Home": "Trang chủ" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hans.json index c0dcb66f0a..6a66abeb9c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hans.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hans.json @@ -1,7 +1,8 @@ { "culture": "zh-Hans", - "texts": { + "texts": { "Welcome_Title": "欢迎", - "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." - } - } \ No newline at end of file + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板.", + "Menu:Home": "首页" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hant.json index fe347fedb9..7b4872c974 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hant.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/Localization/MyProjectName/zh-Hant.json @@ -1,7 +1,8 @@ { "culture": "zh-Hant", - "texts": { + "texts": { "Welcome_Title": "歡迎", - "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." - } - } \ No newline at end of file + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板.", + "Menu:Home": "首頁" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs index 33bfb6c631..8d1c463bb7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs @@ -42,6 +42,7 @@ using Volo.Abp.TenantManagement; using Volo.Abp.TenantManagement.EntityFrameworkCore; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.Validation.Localization; +using Volo.Abp.VirtualFileSystem; namespace MyCompanyName.MyProjectName; @@ -119,6 +120,7 @@ public class MyProjectNameModule : AbpModule ConfigureAutoMapper(); ConfigureSwagger(context.Services); ConfigureAutoApiControllers(); + ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalization(); ConfigureAuthentication(context.Services, configuration); ConfigureCors(context, configuration); @@ -206,6 +208,19 @@ public class MyProjectNameModule : AbpModule }); } + private void ConfigureVirtualFiles(IWebHostEnvironment hostingEnvironment) + { + Configure(options => + { + options.FileSets.AddEmbedded(); + if (hostingEnvironment.IsDevelopment()) + { + /* Using physical files in development, so we don't need to recompile on changes */ + options.FileSets.ReplaceEmbeddedByPhysical(hostingEnvironment.ContentRootPath); + } + }); + } + private void ConfigureAutoApiControllers() { Configure(options => diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ar.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ar.json index 9fe7e951d9..1ee94530fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ar.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ar.json @@ -2,6 +2,7 @@ "culture": "ar", "texts": { "Welcome_Title": "مرحبا", - "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP.", + "Menu:Home": "الرئيسية" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/cs.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/cs.json index d45dfff9a0..524a48e4eb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/cs.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/cs.json @@ -2,6 +2,7 @@ "culture": "cs", "texts": { "Welcome_Title": "Vítejte", - "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework." + "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework.", + "Menu:Home": "Úvod" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/de-DE.json index e325aa3949..da374cd84c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/de-DE.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/de-DE.json @@ -2,6 +2,7 @@ "culture": "de-DE", "texts": { "Welcome_Title": "Willkommen", - "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en-GB.json index 30407ce214..cf24737f24 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en-GB.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en-GB.json @@ -2,6 +2,7 @@ "culture": "en-GB", "texts": { "Welcome_Title": "Welcome_Title", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en.json index 114854aabf..3ee17295cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/en.json @@ -2,6 +2,7 @@ "culture": "en", "texts": { "Welcome_Title": "Welcome", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/es.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/es.json index dbc2280cdc..6e138d3e1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/es.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/es.json @@ -2,6 +2,7 @@ "culture": "es", "texts": { "Welcome_Title": "Bienvenido", - "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework." + "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework.", + "Menu:Home": "Inicio" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fi.json index 96f8386846..e963857efc 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fi.json @@ -2,6 +2,7 @@ "culture": "fi", "texts": { "Welcome_Title": "Tervetuloa", - "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille.", + "Menu:Home": "Koti" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fr.json index 6148d1fa13..b2c2b620f7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/fr.json @@ -2,6 +2,7 @@ "culture": "fr", "texts": { "Welcome_Title": "Bienvenue", - "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP." + "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP.", + "Menu:Home": "Accueil" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hi.json index c741e93703..ec16d655b5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hi.json @@ -2,6 +2,7 @@ "culture": "hi", "texts": { "Welcome_Title": "स्वागत हे", - "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।", + "Menu:Home": "घर" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hu.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hu.json index cf9f2e7b09..fa6f372175 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hu.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/hu.json @@ -2,6 +2,7 @@ "culture": "hu", "texts": { "Welcome_Title": "Üdvözlöm", - "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez.", + "Menu:Home": "Kezdőlap" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/is.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/is.json index 41b8ed6afb..080c0baca2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/is.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/is.json @@ -2,6 +2,7 @@ "culture": "is", "texts": { "Welcome_Title": "Velkomin", - "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework.", + "Menu:Home": "Heim" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/it.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/it.json index 8722bc73c1..57c3cf63d4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/it.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/it.json @@ -2,6 +2,7 @@ "culture": "it", "texts": { "Welcome_Title": "Benvenuto", - "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/nl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/nl.json index e798081c42..525ee02d10 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/nl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/nl.json @@ -2,6 +2,7 @@ "culture": "nl", "texts": { "Welcome_Title": "Welkom", - "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pl-PL.json index ba7c3764ee..2ebf70a5e1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pl-PL.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pl-PL.json @@ -2,6 +2,7 @@ "culture": "pl-PL", "texts": { "Welcome_Title": "Witaj", - "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pt-BR.json index 1e45a233c9..96e45d3c3e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pt-BR.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/pt-BR.json @@ -2,6 +2,7 @@ "culture": "pt-BR", "texts": { "Welcome_Title": "Seja bem-vindo!", - "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework." + "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework.", + "Menu:Home": "Principal" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ro-RO.json index bd31e2cbd6..48102a75b7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ro-RO.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ro-RO.json @@ -2,6 +2,7 @@ "culture": "ro-RO", "texts": { "Welcome_Title": "Bun venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Acasă" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ru.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ru.json index 82ed95eaf8..eb4cc96b5d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ru.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/ru.json @@ -2,6 +2,7 @@ "culture": "ru", "texts": { "Welcome_Title": "Bine ati venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Главная" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sk.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sk.json index cdaf8e7c3d..227d0a74cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sk.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sk.json @@ -2,6 +2,7 @@ "culture": "sk", "texts": { "Welcome_Title": "Vitajte", - "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP." + "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP.", + "Menu:Home": "Domov" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sl.json index 5d595a4910..29876afa0c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/sl.json @@ -2,6 +2,7 @@ "culture": "sl", "texts": { "Welcome_Title": "Dobrodošli", - "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework.", + "Menu:Home": "Domov" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/tr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/tr.json index 06a30cd6b9..6cbdac76a2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/tr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/tr.json @@ -2,6 +2,7 @@ "culture": "tr", "texts": { "Welcome_Title": "Hoşgeldiniz", - "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur." + "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur.", + "Menu:Home": "Ana sayfa" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/vi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/vi.json index 9e61a67f6c..f2e55bd7b0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/vi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/vi.json @@ -2,6 +2,7 @@ "culture": "vi", "texts": { "Welcome_Title": "Chào mừng bạn", - "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework." + "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework.", + "Menu:Home": "Trang chủ" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hans.json index c0dcb66f0a..6a66abeb9c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hans.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hans.json @@ -1,7 +1,8 @@ { "culture": "zh-Hans", - "texts": { + "texts": { "Welcome_Title": "欢迎", - "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." - } - } \ No newline at end of file + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板.", + "Menu:Home": "首页" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hant.json index fe347fedb9..7b4872c974 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hant.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Localization/MyProjectName/zh-Hant.json @@ -1,7 +1,8 @@ { "culture": "zh-Hant", - "texts": { + "texts": { "Welcome_Title": "歡迎", - "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." - } - } \ No newline at end of file + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板.", + "Menu:Home": "首頁" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Logs/logs.txt b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Logs/logs.txt deleted file mode 100644 index 636939885b..0000000000 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Logs/logs.txt +++ /dev/null @@ -1,565 +0,0 @@ -2022-01-27 10:58:32.860 +08:00 [INF] Started database migrations... -2022-01-27 10:58:32.863 +08:00 [INF] Migrating schema for host database... -2022-01-27 10:58:33.667 +08:00 [INF] Executing host database seed... -2022-01-27 10:58:34.409 +08:00 [INF] Successfully completed host database migrations. -2022-01-27 10:58:34.541 +08:00 [INF] Successfully completed all database migrations. -2022-01-27 10:58:34.541 +08:00 [INF] You can safely end this process... -2022-01-27 10:58:42.791 +08:00 [INF] Started database migrations... -2022-01-27 10:58:42.794 +08:00 [INF] Migrating schema for host database... -2022-01-27 10:58:43.129 +08:00 [INF] Executing host database seed... -2022-01-27 10:58:43.545 +08:00 [INF] Successfully completed host database migrations. -2022-01-27 10:58:43.673 +08:00 [INF] Successfully completed all database migrations. -2022-01-27 10:58:43.673 +08:00 [INF] You can safely end this process... -2022-01-27 10:58:53.975 +08:00 [INF] Loaded ABP modules: -2022-01-27 10:58:53.980 +08:00 [INF] - MyCompanyName.MyProjectName.MyProjectNameModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.AbpAspNetCoreMvcModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.AbpAspNetCoreModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Auditing.AbpAuditingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Data.AbpDataModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.ObjectExtending.AbpObjectExtendingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Localization.AbpLocalizationAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Validation.AbpValidationAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Uow.AbpUnitOfWorkModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.EventBus.Abstractions.AbpEventBusAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Json.AbpJsonModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Timing.AbpTimingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Localization.AbpLocalizationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.VirtualFileSystem.AbpVirtualFileSystemModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Settings.AbpSettingsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Security.AbpSecurityModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.MultiTenancy.AbpMultiTenancyModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Threading.AbpThreadingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Auditing.AbpAuditingContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Http.AbpHttpModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Http.AbpHttpAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Minify.AbpMinifyModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Authorization.AbpAuthorizationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Authorization.AbpAuthorizationAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Validation.AbpValidationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.ExceptionHandling.AbpExceptionHandlingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.ApiVersioning.AbpApiVersioningAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.AbpAspNetCoreMvcContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Application.AbpDddApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.UI.Navigation.AbpUiNavigationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.UI.AbpUiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.GlobalFeatures.AbpGlobalFeaturesModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Application.AbpDddApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Domain.AbpDddDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.EventBus.AbpEventBusModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Guids.AbpGuidsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.BackgroundWorkers.AbpBackgroundWorkersModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.DistributedLocking.AbpDistributedLockingAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.ObjectMapping.AbpObjectMappingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Specifications.AbpSpecificationsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Features.AbpFeaturesModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Autofac.AbpAutofacModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Castle.AbpCastleCoreModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AutoMapper.AbpAutoMapperModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Swashbuckle.AbpSwashbuckleModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Authentication.JwtBearer.AbpAspNetCoreAuthenticationJwtBearerModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Serilog.AbpAspNetCoreSerilogModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.AbpAspNetCoreMvcUiBasicThemeModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.AbpAspNetCoreMvcUiThemeSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.AbpAspNetCoreMvcUiBootstrapModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.AbpAspNetCoreMvcUiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Packages.AbpAspNetCoreMvcUiPackagesModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Bundling.AbpAspNetCoreMvcUiBundlingAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Widgets.AbpAspNetCoreMvcUiWidgetsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.Bundling.AbpAspNetCoreMvcUiBundlingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy.AbpAspNetCoreMvcUiMultiTenancyModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AspNetCore.MultiTenancy.AbpAspNetCoreMultiTenancyModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Account.AbpAccountApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Account.AbpAccountApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.AbpIdentityApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.AbpIdentityDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Users.AbpUsersDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Users.AbpUsersAbstractionModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.AbpPermissionManagementApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.AbpPermissionManagementDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.AbpIdentityApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.AbpIdentityDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Users.AbpUsersDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.AbpPermissionManagementApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.AbpPermissionManagementDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Caching.AbpCachingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Serialization.AbpSerializationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Emailing.AbpEmailingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.BackgroundJobs.AbpBackgroundJobsAbstractionsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TextTemplating.AbpTextTemplatingModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TextTemplating.Scriban.AbpTextTemplatingScribanModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TextTemplating.AbpTextTemplatingCoreModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Account.AbpAccountHttpApiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.AbpIdentityHttpApiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Account.Web.AbpAccountWebIdentityServerModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Account.Web.AbpAccountWebModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.AspNetCore.AbpIdentityAspNetCoreModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.IdentityServer.AbpIdentityServerDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.IdentityServer.AbpIdentityServerDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.Identity.AbpPermissionManagementDomainIdentityModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.MongoDB.AbpIdentityMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Users.MongoDB.AbpUsersMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.MongoDB.AbpMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.IdentityServer.MongoDB.AbpIdentityServerMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.Identity.Web.AbpIdentityWebModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.Web.AbpPermissionManagementWebModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AuditLogging.MongoDB.AbpAuditLoggingMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AuditLogging.AbpAuditLoggingDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.AuditLogging.AbpAuditLoggingDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.HttpApi.AbpPermissionManagementHttpApiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.PermissionManagement.MongoDB.AbpPermissionManagementMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.AbpTenantManagementApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.AbpTenantManagementDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.AbpTenantManagementDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.AbpTenantManagementApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.AbpTenantManagementHttpApiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.AbpFeatureManagementHttpApiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.AbpFeatureManagementApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.AbpFeatureManagementDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.MongoDB.AbpTenantManagementMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.TenantManagement.Web.AbpTenantManagementWebModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.AbpFeatureManagementWebModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.AbpFeatureManagementApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.AbpFeatureManagementDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.FeatureManagement.MongoDB.AbpFeatureManagementMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.AbpSettingManagementApplicationModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.AbpSettingManagementDomainModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.AbpSettingManagementDomainSharedModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.AbpSettingManagementApplicationContractsModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.MongoDB.AbpSettingManagementMongoDbModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.AbpSettingManagementHttpApiModule -2022-01-27 10:58:53.980 +08:00 [INF] - Volo.Abp.SettingManagement.Web.AbpSettingManagementWebModule -2022-01-27 10:58:54.035 +08:00 [DBG] Started background worker: Volo.Abp.IdentityServer.Tokens.TokenCleanupBackgroundWorker -2022-01-27 10:58:54.040 +08:00 [INF] Starting IdentityServer4 version 4.1.2+997a6cdd643e46cd5762b710c4ddc43574cbec2e -2022-01-27 10:58:54.443 +08:00 [INF] Using the default authentication scheme Identity.Application for IdentityServer -2022-01-27 10:58:54.443 +08:00 [DBG] Using Identity.Application as default ASP.NET Core scheme for authentication -2022-01-27 10:58:54.443 +08:00 [DBG] Using Identity.External as default ASP.NET Core scheme for sign-in -2022-01-27 10:58:54.443 +08:00 [DBG] Using Identity.External as default ASP.NET Core scheme for sign-out -2022-01-27 10:58:54.443 +08:00 [DBG] Using Identity.Application as default ASP.NET Core scheme for challenge -2022-01-27 10:58:54.443 +08:00 [DBG] Using Identity.Application as default ASP.NET Core scheme for forbid -2022-01-27 10:58:54.643 +08:00 [INF] User profile is available. Using 'C:\Users\malim\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest. -2022-01-27 10:58:54.797 +08:00 [INF] Initialized all ABP modules. -2022-01-27 10:58:54.798 +08:00 [INF] Starting MyCompanyName.MyProjectName. -2022-01-27 10:58:54.871 +08:00 [INF] Now listening on: https://localhost:44303 -2022-01-27 10:58:54.871 +08:00 [INF] Application started. Press Ctrl+C to shut down. -2022-01-27 10:58:54.871 +08:00 [INF] Hosting environment: Development -2022-01-27 10:58:54.871 +08:00 [INF] Content root path: C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\ -2022-01-27 10:58:55.141 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/ - - -2022-01-27 10:58:58.748 +08:00 [DBG] Login Url: /Account/Login -2022-01-27 10:58:58.748 +08:00 [DBG] Login Return Url Parameter: ReturnUrl -2022-01-27 10:58:58.748 +08:00 [DBG] Logout Url: /Account/Logout -2022-01-27 10:58:58.748 +08:00 [DBG] ConsentUrl Url: /Consent -2022-01-27 10:58:58.748 +08:00 [DBG] Consent Return Url Parameter: returnUrl -2022-01-27 10:58:58.748 +08:00 [DBG] Error Url: /Account/Error -2022-01-27 10:58:58.748 +08:00 [DBG] Error Id Parameter: errorId -2022-01-27 10:58:58.754 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:58.815 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:58.822 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:58.895 +08:00 [INF] Executing endpoint '/Index' -2022-01-27 10:58:58.932 +08:00 [INF] Route matched with {page = "/Index", area = "", action = "", controller = ""}. Executing page /Index -2022-01-27 10:58:58.933 +08:00 [INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy -2022-01-27 10:58:58.945 +08:00 [INF] Executing an implicit handler method - ModelState is "Valid" -2022-01-27 10:58:58.946 +08:00 [INF] Executed an implicit handler method, returned result Microsoft.AspNetCore.Mvc.RazorPages.PageResult. -2022-01-27 10:58:59.114 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 17.12 ms. -2022-01-27 10:58:59.127 +08:00 [DBG] Added bundle 'Pages.Index.cshtml' to the page in 1.16 ms. -2022-01-27 10:58:59.272 +08:00 [INF] Authorization failed. These requirements were not met: -PermissionRequirement: SettingManagement.Emailing -2022-01-27 10:58:59.357 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 9.00 ms. -2022-01-27 10:58:59.365 +08:00 [DBG] Added bundle 'Pages.Index.cshtml' to the page in 0.90 ms. -2022-01-27 10:58:59.380 +08:00 [INF] Executed page /Index in 444.4825ms -2022-01-27 10:58:59.381 +08:00 [INF] Executed endpoint '/Index' -2022-01-27 10:58:59.397 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/ - - - 200 - text/html;+charset=utf-8 4256.6721ms -2022-01-27 10:58:59.413 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/core/abp.css?_v=637787962594990014 - - -2022-01-27 10:58:59.414 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/bootstrap/css/bootstrap.css?_v=637787962596360013 - - -2022-01-27 10:58:59.416 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/css/all.css?_v=637787962594760005 - - -2022-01-27 10:58:59.416 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/css/v4-shims.css?_v=637787962594760005 - - -2022-01-27 10:58:59.416 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/toastr/toastr.min.css?_v=637787962599165525 - - -2022-01-27 10:58:59.416 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/select2/css/select2.min.css?_v=637787962598130031 - - -2022-01-27 10:58:59.416 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.css?_v=637787962598080019 - - -2022-01-27 10:58:59.417 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/datatables.net-bs5/css/dataTables.bootstrap5.css?_v=637787962596640014 - - -2022-01-27 10:58:59.421 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/bootstrap-datepicker/bootstrap-datepicker.min.css?_v=637787962595050018 - - -2022-01-27 10:58:59.422 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-styles.css?_v=637788443685714426 - - -2022-01-27 10:58:59.422 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/themes/basic/layout.css?_v=637788476013609779 - - -2022-01-27 10:58:59.422 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/global-styles.css?_v=637787962594730011 - - -2022-01-27 10:58:59.422 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Pages/Index.cshtml.css?_v=637787962594680028 - - -2022-01-27 10:58:59.422 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/utils/abp-utils.umd.min.js?_v=637787962595030009 - - -2022-01-27 10:58:59.422 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/core/abp.js?_v=637787962595000014 - - -2022-01-27 10:58:59.424 +08:00 [INF] Sending file. Request path: '/themes/basic/layout.css'. Physical path: 'N/A' -2022-01-27 10:58:59.424 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-styles.css'. Physical path: 'N/A' -2022-01-27 10:58:59.424 +08:00 [INF] Sending file. Request path: '/libs/toastr/toastr.min.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\toastr\toastr.min.css' -2022-01-27 10:58:59.424 +08:00 [INF] Sending file. Request path: '/libs/abp/core/abp.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\abp\core\abp.css' -2022-01-27 10:58:59.424 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/core/abp.css?_v=637787962594990014 - - - 200 1331 text/css 11.4772ms -2022-01-27 10:58:59.424 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/toastr/toastr.min.css?_v=637787962599165525 - - - 200 6454 text/css 8.3721ms -2022-01-27 10:58:59.424 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-styles.css?_v=637788443685714426 - - - 200 464 text/css 2.5326ms -2022-01-27 10:58:59.424 +08:00 [INF] Sending file. Request path: '/libs/datatables.net-bs5/css/dataTables.bootstrap5.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\datatables.net-bs5\css\dataTables.bootstrap5.css' -2022-01-27 10:58:59.424 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/themes/basic/layout.css?_v=637788476013609779 - - - 200 1735 text/css 2.6964ms -2022-01-27 10:58:59.424 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/datatables.net-bs5/css/dataTables.bootstrap5.css?_v=637787962596640014 - - - 200 9141 text/css 7.7334ms -2022-01-27 10:58:59.425 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/bootstrap/js/bootstrap.enable.tooltips.everywhere.js?_v=637787962596610017 - - -2022-01-27 10:58:59.427 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/sweetalert2/sweetalert2.all.min.js?_v=637787962598642514 - - -2022-01-27 10:58:59.427 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/bootstrap/js/bootstrap.bundle.js?_v=637787962596520011 - - -2022-01-27 10:58:59.427 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/bootstrap/js/bootstrap.enable.popovers.everywhere.js?_v=637787962596600017 - - -2022-01-27 10:58:59.427 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/jquery-form/jquery.form.min.js?_v=637787962596730012 - - -2022-01-27 10:58:59.427 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/lodash/lodash.min.js?_v=637787962597980031 - - -2022-01-27 10:58:59.428 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/jquery-validation/jquery.validate.js?_v=637787962596770017 - - -2022-01-27 10:58:59.428 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js?_v=637787962596750012 - - -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/Pages/Index.cshtml.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\Pages\Index.cshtml.css' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/bootstrap/js/bootstrap.enable.tooltips.everywhere.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\bootstrap\js\bootstrap.enable.tooltips.everywhere.js' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/bootstrap/js/bootstrap.enable.popovers.everywhere.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\bootstrap\js\bootstrap.enable.popovers.everywhere.js' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/abp/core/abp.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\abp\core\abp.js' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/abp/utils/abp-utils.umd.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\abp\utils\abp-utils.umd.min.js' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/select2/css/select2.min.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\select2\css\select2.min.css' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/global-styles.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\global-styles.css' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/jquery-form/jquery.form.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\jquery-form\jquery.form.min.js' -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/bootstrap/js/bootstrap.enable.popovers.everywhere.js?_v=637787962596600017 - - - 200 195 application/javascript 2.8033ms -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/jquery-form/jquery.form.min.js?_v=637787962596730012 - - - 200 17117 application/javascript 2.8220ms -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/bootstrap-datepicker/bootstrap-datepicker.min.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\bootstrap-datepicker\bootstrap-datepicker.min.css' -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/bootstrap-datepicker/bootstrap-datepicker.min.css?_v=637787962595050018 - - - 200 15737 text/css 9.5095ms -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/utils/abp-utils.umd.min.js?_v=637787962595030009 - - - 200 8257 application/javascript 8.1397ms -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/bootstrap/js/bootstrap.enable.tooltips.everywhere.js?_v=637787962596610017 - - - 200 198 application/javascript 5.4019ms -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/@fortawesome/fontawesome-free/css/v4-shims.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\@fortawesome\fontawesome-free\css\v4-shims.css' -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/global-styles.css?_v=637787962594730011 - - - 200 26 text/css 8.3912ms -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Pages/Index.cshtml.css?_v=637787962594680028 - - - 200 3 text/css 8.3032ms -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/css/v4-shims.css?_v=637787962594760005 - - - 200 43484 text/css 14.6952ms -2022-01-27 10:58:59.430 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/core/abp.js?_v=637787962595000014 - - - 200 23271 application/javascript 8.1910ms -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\malihu-custom-scrollbar-plugin\jquery.mCustomScrollbar.css' -2022-01-27 10:58:59.430 +08:00 [INF] Sending file. Request path: '/libs/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\jquery-validation-unobtrusive\jquery.validate.unobtrusive.js' -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/select2/css/select2.min.css?_v=637787962598130031 - - - 200 14967 text/css 14.4543ms -2022-01-27 10:58:59.431 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/select2/js/select2.min.js?_v=637787962598590019 - - -2022-01-27 10:58:59.431 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/jquery/jquery.js?_v=637787962597960035 - - -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.css?_v=637787962598080019 - - - 200 54850 text/css 14.1497ms -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js?_v=637787962596750012 - - - 200 19798 application/javascript 2.3691ms -2022-01-27 10:58:59.431 +08:00 [INF] Sending file. Request path: '/libs/jquery-validation/jquery.validate.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\jquery-validation\jquery.validate.js' -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/jquery-validation/jquery.validate.js?_v=637787962596770017 - - - 200 52599 application/javascript 2.6001ms -2022-01-27 10:58:59.431 +08:00 [INF] Sending file. Request path: '/libs/sweetalert2/sweetalert2.all.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\sweetalert2\sweetalert2.all.min.js' -2022-01-27 10:58:59.431 +08:00 [INF] Sending file. Request path: '/libs/lodash/lodash.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\lodash\lodash.min.js' -2022-01-27 10:58:59.431 +08:00 [INF] Sending file. Request path: '/libs/@fortawesome/fontawesome-free/css/all.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\@fortawesome\fontawesome-free\css\all.css' -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/sweetalert2/sweetalert2.all.min.js?_v=637787962598642514 - - - 200 67277 application/javascript 4.2518ms -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/lodash/lodash.min.js?_v=637787962597980031 - - - 200 73154 application/javascript 3.8371ms -2022-01-27 10:58:59.431 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/css/all.css?_v=637787962594760005 - - - 200 78193 text/css 15.5858ms -2022-01-27 10:58:59.432 +08:00 [INF] Sending file. Request path: '/libs/bootstrap/css/bootstrap.css'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\bootstrap\css\bootstrap.css' -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/datatables.net/js/jquery.dataTables.js?_v=637787962596710012 - - -2022-01-27 10:58:59.432 +08:00 [INF] Sending file. Request path: '/libs/bootstrap/js/bootstrap.bundle.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\bootstrap\js\bootstrap.bundle.js' -2022-01-27 10:58:59.432 +08:00 [INF] Sending file. Request path: '/libs/select2/js/select2.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\select2\js\select2.min.js' -2022-01-27 10:58:59.432 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/bootstrap/css/bootstrap.css?_v=637787962596360013 - - - 200 216749 text/css 17.7791ms -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/datatables.net-bs5/js/dataTables.bootstrap5.js?_v=637787962596650012 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/bootstrap/js/bootstrap.bundle.js?_v=637787962596520011 - - - 200 216531 application/javascript 4.4484ms -2022-01-27 10:58:59.432 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/select2/js/select2.min.js?_v=637787962598590019 - - - 200 70852 application/javascript 1.1434ms -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/jquery/abp.jquery.js?_v=637787962595000014 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.concat.min.js?_v=637787962598070016 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/toastr/toastr.min.js?_v=637787962599165525 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/luxon/luxon.min.js?_v=637787962598040027 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/luxon/abp.luxon.js?_v=637787962595010005 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/timeago/jquery.timeago.js?_v=637787962598690020 - - -2022-01-27 10:58:59.432 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/bootstrap-datepicker/bootstrap-datepicker.min.js?_v=637787962595060011 - - -2022-01-27 10:58:59.433 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/ui-extensions.js?_v=637788443685714426 - - -2022-01-27 10:58:59.433 +08:00 [INF] Sending file. Request path: '/libs/datatables.net-bs5/js/dataTables.bootstrap5.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\datatables.net-bs5\js\dataTables.bootstrap5.js' -2022-01-27 10:58:59.433 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery/jquery-extensions.js?_v=637788443685714426 - - -2022-01-27 10:58:59.433 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery-form/jquery-form-extensions.js?_v=637788443685714426 - - -2022-01-27 10:58:59.438 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/datatables.net-bs5/js/dataTables.bootstrap5.js?_v=637787962596650012 - - - 200 4850 application/javascript 6.3560ms -2022-01-27 10:58:59.438 +08:00 [INF] Sending file. Request path: '/libs/abp/jquery/abp.jquery.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\abp\jquery\abp.jquery.js' -2022-01-27 10:58:59.438 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery-form/jquery-form-extensions.js'. Physical path: 'N/A' -2022-01-27 10:58:59.438 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/jquery/abp.jquery.js?_v=637787962595000014 - - - 200 13169 application/javascript 6.4517ms -2022-01-27 10:58:59.438 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery/widget-manager.js?_v=637788443685714426 - - -2022-01-27 10:58:59.438 +08:00 [INF] Sending file. Request path: '/libs/timeago/jquery.timeago.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\timeago\jquery.timeago.js' -2022-01-27 10:58:59.438 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js?_v=637788443685714426 - - -2022-01-27 10:58:59.438 +08:00 [INF] Sending file. Request path: '/libs/toastr/toastr.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\toastr\toastr.min.js' -2022-01-27 10:58:59.439 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/toastr/toastr.min.js?_v=637787962599165525 - - - 200 5253 application/javascript 6.5001ms -2022-01-27 10:58:59.439 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery/jquery-extensions.js'. Physical path: 'N/A' -2022-01-27 10:58:59.439 +08:00 [INF] Sending file. Request path: '/libs/jquery/jquery.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\jquery\jquery.js' -2022-01-27 10:58:59.439 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/ui-extensions.js'. Physical path: 'N/A' -2022-01-27 10:58:59.439 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/jquery/jquery.js?_v=637787962597960035 - - - 200 299461 application/javascript 8.0902ms -2022-01-27 10:58:59.439 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery-form/jquery-form-extensions.js?_v=637788443685714426 - - - 200 3605 application/javascript 5.9420ms -2022-01-27 10:58:59.443 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/modal-manager.js?_v=637788443685714426 - - -2022-01-27 10:58:59.443 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-extensions.js?_v=637788443685714426 - - -2022-01-27 10:58:59.443 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/sweetalert2/abp-sweetalert2.js?_v=637788443685714426 - - -2022-01-27 10:58:59.443 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/toastr/abp-toastr.js?_v=637788443685714426 - - -2022-01-27 10:58:59.444 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Pages/Abp/MultiTenancy/tenant-switch.js?_v=637788443694838144 - - -2022-01-27 10:58:59.444 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/themes/basic/layout.js?_v=637788476013609779 - - -2022-01-27 10:58:59.444 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/timeago/locales/jquery.timeago.en.js?_v=637787962598842566 - - -2022-01-27 10:58:59.444 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - -2022-01-27 10:58:59.444 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - -2022-01-27 10:58:59.445 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Pages/Index.cshtml.js?_v=637787962594680028 - - -2022-01-27 10:58:59.446 +08:00 [INF] Sending file. Request path: '/Pages/Index.cshtml.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\Pages\Index.cshtml.js' -2022-01-27 10:58:59.446 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Pages/Index.cshtml.js?_v=637787962594680028 - - - 200 30 application/javascript 0.8106ms -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/ui-extensions.js?_v=637788443685714426 - - - 200 10589 application/javascript 14.4081ms -2022-01-27 10:58:59.447 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:59.447 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js'. Physical path: 'N/A' -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery/jquery-extensions.js?_v=637788443685714426 - - - 200 5904 application/javascript 14.4578ms -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js?_v=637788443685714426 - - - 200 8553 application/javascript 8.7299ms -2022-01-27 10:58:59.447 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-extensions.js'. Physical path: 'N/A' -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-extensions.js?_v=637788443685714426 - - - 200 20452 application/javascript 4.4945ms -2022-01-27 10:58:59.447 +08:00 [INF] Sending file. Request path: '/themes/basic/layout.js'. Physical path: 'N/A' -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/themes/basic/layout.js?_v=637788476013609779 - - - 200 543 application/javascript 3.2978ms -2022-01-27 10:58:59.447 +08:00 [INF] Sending file. Request path: '/libs/timeago/locales/jquery.timeago.en.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\timeago\locales\jquery.timeago.en.js' -2022-01-27 10:58:59.447 +08:00 [INF] Sending file. Request path: '/libs/abp/luxon/abp.luxon.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\abp\luxon\abp.luxon.js' -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/timeago/locales/jquery.timeago.en.js?_v=637787962598842566 - - - 200 808 application/javascript 3.1815ms -2022-01-27 10:58:59.447 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/luxon/abp.luxon.js?_v=637787962595010005 - - - 200 1361 application/javascript 15.3188ms -2022-01-27 10:58:59.448 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:59.448 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/modal-manager.js'. Physical path: 'N/A' -2022-01-27 10:58:59.448 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/modal-manager.js?_v=637788443685714426 - - - 200 6823 application/javascript 5.5204ms -2022-01-27 10:58:59.448 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/sweetalert2/abp-sweetalert2.js'. Physical path: 'N/A' -2022-01-27 10:58:59.448 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/sweetalert2/abp-sweetalert2.js?_v=637788443685714426 - - - 200 3213 application/javascript 5.1145ms -2022-01-27 10:58:59.449 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:59.449 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:59.449 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:59.449 +08:00 [INF] Sending file. Request path: '/libs/luxon/luxon.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\luxon\luxon.min.js' -2022-01-27 10:58:59.449 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:58:59.449 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/luxon/luxon.min.js?_v=637787962598040027 - - - 200 72830 application/javascript 16.7320ms -2022-01-27 10:58:59.448 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/toastr/abp-toastr.js'. Physical path: 'N/A' -2022-01-27 10:58:59.449 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/toastr/abp-toastr.js?_v=637788443685714426 - - - 200 951 application/javascript 5.6654ms -2022-01-27 10:58:59.449 +08:00 [INF] Sending file. Request path: '/Pages/Abp/MultiTenancy/tenant-switch.js'. Physical path: 'N/A' -2022-01-27 10:58:59.450 +08:00 [INF] Sending file. Request path: '/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery/widget-manager.js'. Physical path: 'N/A' -2022-01-27 10:58:59.450 +08:00 [INF] Sending file. Request path: '/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.concat.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\malihu-custom-scrollbar-plugin\jquery.mCustomScrollbar.concat.min.js' -2022-01-27 10:58:59.450 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:58:59.450 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:58:59.450 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/timeago/jquery.timeago.js?_v=637787962598690020 - - - 200 7636 application/javascript 17.3653ms -2022-01-27 10:58:59.450 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.concat.min.js?_v=637787962598070016 - - - 200 45483 application/javascript 17.8126ms -2022-01-27 10:58:59.450 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Pages/Abp/MultiTenancy/tenant-switch.js?_v=637788443694838144 - - - 200 414 application/javascript 5.7826ms -2022-01-27 10:58:59.450 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/abp/aspnetcore-mvc-ui-theme-shared/jquery/widget-manager.js?_v=637788443685714426 - - - 200 4790 application/javascript 11.6000ms -2022-01-27 10:58:59.451 +08:00 [INF] Sending file. Request path: '/libs/datatables.net/js/jquery.dataTables.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\datatables.net\js\jquery.dataTables.js' -2022-01-27 10:58:59.452 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/datatables.net/js/jquery.dataTables.js?_v=637787962596710012 - - - 200 463261 application/javascript 19.9052ms -2022-01-27 10:58:59.453 +08:00 [INF] Sending file. Request path: '/libs/bootstrap-datepicker/bootstrap-datepicker.min.js'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\bootstrap-datepicker\bootstrap-datepicker.min.js' -2022-01-27 10:58:59.453 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/bootstrap-datepicker/bootstrap-datepicker.min.js?_v=637787962595060011 - - - 200 33700 application/javascript 20.3924ms -2022-01-27 10:58:59.456 +08:00 [INF] Route matched with {area = "Abp", action = "Get", controller = "AbpApplicationConfigurationScript", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult] Get() on controller Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:58:59.467 +08:00 [INF] Route matched with {area = "Abp", action = "GetAll", controller = "AbpServiceProxyScript", page = ""}. Executing controller action with signature Microsoft.AspNetCore.Mvc.ActionResult GetAll(Volo.Abp.AspNetCore.Mvc.ProxyScripting.ServiceProxyGenerationModel) on controller Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:58:59.505 +08:00 [DBG] Executing AbpApplicationConfigurationAppService.GetAsync()... -2022-01-27 10:58:59.536 +08:00 [DBG] ActionApiDescriptionModel.Create: Account.RegisterAsyncByInput -2022-01-27 10:58:59.548 +08:00 [DBG] ActionApiDescriptionModel.Create: Account.SendPasswordResetCodeAsyncByInput -2022-01-27 10:58:59.548 +08:00 [DBG] ActionApiDescriptionModel.Create: Account.ResetPasswordAsyncByInput -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: Account.LoginByLogin -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: Account.Logout -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: Account.CheckPasswordByLogin -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: Profile.GetAsync -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: Profile.UpdateAsyncByInput -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: Profile.ChangePasswordAsyncByInput -2022-01-27 10:58:59.549 +08:00 [DBG] ActionApiDescriptionModel.Create: AbpTenant.FindTenantByNameAsyncByName -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: AbpTenant.FindTenantByIdAsyncById -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityRole.GetAllListAsync -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityRole.GetListAsyncByInput -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityRole.GetAsyncById -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityRole.CreateAsyncByInput -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityRole.UpdateAsyncByIdAndInput -2022-01-27 10:58:59.550 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityRole.DeleteAsyncById -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.GetAsyncById -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.GetListAsyncByInput -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.CreateAsyncByInput -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.UpdateAsyncByIdAndInput -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.DeleteAsyncById -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.GetRolesAsyncById -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.GetAssignableRolesAsync -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.UpdateRolesAsyncByIdAndInput -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.FindByUsernameAsyncByUserName -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUser.FindByEmailAsyncByEmail -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUserLookup.FindByIdAsyncById -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUserLookup.FindByUserNameAsyncByUserName -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUserLookup.SearchAsyncByInput -2022-01-27 10:58:59.551 +08:00 [DBG] ActionApiDescriptionModel.Create: IdentityUserLookup.GetCountAsyncByInput -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Permissions.GetAsyncByProviderNameAndProviderKey -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Permissions.UpdateAsyncByProviderNameAndProviderKeyAndInput -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: EmailSettings.GetAsync -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: EmailSettings.UpdateAsyncByInput -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.GetAsyncById -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.GetListAsyncByInput -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.CreateAsyncByInput -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.UpdateAsyncByIdAndInput -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.DeleteAsyncById -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.GetDefaultConnectionStringAsyncById -2022-01-27 10:58:59.552 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.UpdateDefaultConnectionStringAsyncByIdAndDefaultConnectionString -2022-01-27 10:58:59.553 +08:00 [DBG] ActionApiDescriptionModel.Create: Tenant.DeleteDefaultConnectionStringAsyncById -2022-01-27 10:58:59.553 +08:00 [DBG] ActionApiDescriptionModel.Create: Features.GetAsyncByProviderNameAndProviderKey -2022-01-27 10:58:59.553 +08:00 [DBG] ActionApiDescriptionModel.Create: Features.UpdateAsyncByProviderNameAndProviderKeyAndInput -2022-01-27 10:58:59.553 +08:00 [DBG] ActionApiDescriptionModel.Create: AbpApplicationConfiguration.GetAsync -2022-01-27 10:58:59.553 +08:00 [DBG] ActionApiDescriptionModel.Create: AbpApiDefinition.GetByModel -2022-01-27 10:58:59.571 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:58:59.572 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc) in 103.986ms -2022-01-27 10:58:59.572 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:58:59.572 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - - 200 1936 application/javascript 127.3389ms -2022-01-27 10:58:59.621 +08:00 [DBG] Executed AbpApplicationConfigurationAppService.GetAsync(). -2022-01-27 10:58:59.654 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:58:59.657 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc) in 201.1791ms -2022-01-27 10:58:59.657 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:58:59.657 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - - 200 80956 application/javascript 213.0499ms -2022-01-27 10:59:02.427 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Account/Login - - -2022-01-27 10:59:02.432 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.433 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.433 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.434 +08:00 [INF] Executing endpoint '/Account/Login' -2022-01-27 10:59:02.439 +08:00 [INF] Route matched with {page = "/Account/Login", area = "", action = "", controller = ""}. Executing page /Account/Login -2022-01-27 10:59:02.439 +08:00 [INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy -2022-01-27 10:59:02.575 +08:00 [INF] Executing handler method Volo.Abp.Account.Web.Pages.Account.LoginModel.OnGetAsync - ModelState is "Valid" -2022-01-27 10:59:02.585 +08:00 [INF] Executed handler method OnGetAsync, returned result Microsoft.AspNetCore.Mvc.RazorPages.PageResult. -2022-01-27 10:59:02.736 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 1.12 ms. -2022-01-27 10:59:02.741 +08:00 [INF] Authorization failed. These requirements were not met: -PermissionRequirement: SettingManagement.Emailing -2022-01-27 10:59:02.749 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 3.07 ms. -2022-01-27 10:59:02.751 +08:00 [INF] Executed page /Account/Login in 311.3937ms -2022-01-27 10:59:02.751 +08:00 [INF] Executed endpoint '/Account/Login' -2022-01-27 10:59:02.752 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Account/Login - - - 200 - text/html;+charset=utf-8 324.9261ms -2022-01-27 10:59:02.771 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - -2022-01-27 10:59:02.771 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - -2022-01-27 10:59:02.773 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.773 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.774 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.774 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.774 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.774 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:02.774 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:02.774 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:02.775 +08:00 [INF] Route matched with {area = "Abp", action = "Get", controller = "AbpApplicationConfigurationScript", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult] Get() on controller Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:59:02.775 +08:00 [INF] Route matched with {area = "Abp", action = "GetAll", controller = "AbpServiceProxyScript", page = ""}. Executing controller action with signature Microsoft.AspNetCore.Mvc.ActionResult GetAll(Volo.Abp.AspNetCore.Mvc.ProxyScripting.ServiceProxyGenerationModel) on controller Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:59:02.777 +08:00 [DBG] Executing AbpApplicationConfigurationAppService.GetAsync()... -2022-01-27 10:59:02.778 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:59:02.778 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc) in 3.0252ms -2022-01-27 10:59:02.778 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:02.778 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - - 200 1936 application/javascript 6.8387ms -2022-01-27 10:59:02.795 +08:00 [DBG] Executed AbpApplicationConfigurationAppService.GetAsync(). -2022-01-27 10:59:02.806 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:59:02.807 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc) in 32.0129ms -2022-01-27 10:59:02.807 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:02.807 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - - 200 80956 application/javascript 35.8050ms -2022-01-27 10:59:03.987 +08:00 [INF] Request starting HTTP/2 POST https://localhost:44303/Account/Login application/x-www-form-urlencoded 291 -2022-01-27 10:59:03.989 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:03.995 +08:00 [INF] No CORS policy found for the specified request. -2022-01-27 10:59:03.995 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:03.995 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:03.995 +08:00 [INF] Executing endpoint '/Account/Login' -2022-01-27 10:59:03.996 +08:00 [INF] Route matched with {page = "/Account/Login", area = "", action = "", controller = ""}. Executing page /Account/Login -2022-01-27 10:59:03.996 +08:00 [INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy -2022-01-27 10:59:04.090 +08:00 [INF] Executing handler method Volo.Abp.Account.Web.Pages.Account.LoginModel.OnPostAsync - ModelState is "Valid" -2022-01-27 10:59:04.363 +08:00 [DBG] Augmenting SignInContext -2022-01-27 10:59:04.364 +08:00 [DBG] Adding idp claim with value: local -2022-01-27 10:59:04.364 +08:00 [DBG] Adding auth_time claim with value: 1643252344 -2022-01-27 10:59:04.367 +08:00 [INF] Identity.Application was not authenticated. Failure message: Unprotect ticket failed -2022-01-27 10:59:04.372 +08:00 [INF] AuthenticationScheme: Identity.Application signed in. -2022-01-27 10:59:04.508 +08:00 [INF] {"Username":"admin","Provider":null,"ProviderUserId":null,"SubjectId":"20f03593-6a33-6755-f71c-3a01aba54777","DisplayName":"admin","Endpoint":"UI","ClientId":null,"Category":"Authentication","Name":"User Login Success","EventType":"Success","Id":1000,"Message":null,"ActivityId":"0HMF183QBIF77:00000081","TimeStamp":"2022-01-27T02:59:04.0000000Z","ProcessId":11240,"LocalIpAddress":"::1:44303","RemoteIpAddress":"::1","$type":"UserLoginSuccessEvent"} -2022-01-27 10:59:04.511 +08:00 [INF] Executed handler method OnPostAsync, returned result Microsoft.AspNetCore.Mvc.RedirectResult. -2022-01-27 10:59:04.514 +08:00 [INF] Executing RedirectResult, redirecting to /. -2022-01-27 10:59:04.514 +08:00 [INF] Executed page /Account/Login in 518.0975ms -2022-01-27 10:59:04.514 +08:00 [INF] Executed endpoint '/Account/Login' -2022-01-27 10:59:04.551 +08:00 [INF] Request finished HTTP/2 POST https://localhost:44303/Account/Login application/x-www-form-urlencoded 291 - 302 0 - 563.8777ms -2022-01-27 10:59:04.555 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/ - - -2022-01-27 10:59:04.563 +08:00 [INF] Executing endpoint '/Index' -2022-01-27 10:59:04.563 +08:00 [INF] Route matched with {page = "/Index", area = "", action = "", controller = ""}. Executing page /Index -2022-01-27 10:59:04.563 +08:00 [INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy -2022-01-27 10:59:04.563 +08:00 [INF] Executing an implicit handler method - ModelState is "Valid" -2022-01-27 10:59:04.563 +08:00 [INF] Executed an implicit handler method, returned result Microsoft.AspNetCore.Mvc.RazorPages.PageResult. -2022-01-27 10:59:04.566 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 1.20 ms. -2022-01-27 10:59:04.567 +08:00 [DBG] Added bundle 'Pages.Index.cshtml' to the page in 0.22 ms. -2022-01-27 10:59:04.572 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:04.572 +08:00 [DBG] Not found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:04.573 +08:00 [DBG] Getting all granted permissions from the repository for this provider name,key: U,20f03593-6a33-6755-f71c-3a01aba54777 -2022-01-27 10:59:04.584 +08:00 [DBG] Setting the cache items. Count: 19 -2022-01-27 10:59:04.588 +08:00 [DBG] Finished setting the cache items. Count: 19 -2022-01-27 10:59:04.589 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:04.589 +08:00 [DBG] Not found in the cache: pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:04.589 +08:00 [DBG] Getting all granted permissions from the repository for this provider name,key: R,admin -2022-01-27 10:59:04.594 +08:00 [DBG] Setting the cache items. Count: 19 -2022-01-27 10:59:04.598 +08:00 [DBG] Finished setting the cache items. Count: 19 -2022-01-27 10:59:04.603 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants -2022-01-27 10:59:04.605 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants -2022-01-27 10:59:04.605 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpTenantManagement.Tenants -2022-01-27 10:59:04.606 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpTenantManagement.Tenants -2022-01-27 10:59:04.626 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 2.49 ms. -2022-01-27 10:59:04.627 +08:00 [DBG] Added bundle 'Pages.Index.cshtml' to the page in 0.09 ms. -2022-01-27 10:59:04.627 +08:00 [INF] Executed page /Index in 63.6237ms -2022-01-27 10:59:04.627 +08:00 [INF] Executed endpoint '/Index' -2022-01-27 10:59:04.627 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/ - - - 200 - text/html;+charset=utf-8 72.1004ms -2022-01-27 10:59:04.654 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - -2022-01-27 10:59:04.654 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - -2022-01-27 10:59:04.657 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:04.657 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:04.657 +08:00 [INF] Route matched with {area = "Abp", action = "GetAll", controller = "AbpServiceProxyScript", page = ""}. Executing controller action with signature Microsoft.AspNetCore.Mvc.ActionResult GetAll(Volo.Abp.AspNetCore.Mvc.ProxyScripting.ServiceProxyGenerationModel) on controller Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:59:04.657 +08:00 [INF] Route matched with {area = "Abp", action = "Get", controller = "AbpApplicationConfigurationScript", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult] Get() on controller Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:59:04.658 +08:00 [DBG] Executing AbpApplicationConfigurationAppService.GetAsync()... -2022-01-27 10:59:04.658 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:FeatureManagement.ManageHostFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:04.659 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:59:04.659 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc) in 2.1176ms -2022-01-27 10:59:04.659 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:04.659 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - - 200 1936 application/javascript 4.7814ms -2022-01-27 10:59:04.666 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:FeatureManagement.ManageHostFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:04.666 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Roles.Create,pn:R,pk:admin,n:AbpIdentity.Roles.Update,pn:R,pk:admin,n:AbpIdentity.Roles.Delete,pn:R,pk:admin,n:AbpIdentity.Roles.ManagePermissions,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpIdentity.Users.Create,pn:R,pk:admin,n:AbpIdentity.Users.Update,pn:R,pk:admin,n:AbpIdentity.Users.Delete,pn:R,pk:admin,n:AbpIdentity.Users.ManagePermissions,pn:R,pk:admin,n:AbpTenantManagement.Tenants,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Create,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Update,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Delete,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageFeatures,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:R,pk:admin,n:FeatureManagement.ManageHostFeatures,pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:04.672 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Roles.Create,pn:R,pk:admin,n:AbpIdentity.Roles.Update,pn:R,pk:admin,n:AbpIdentity.Roles.Delete,pn:R,pk:admin,n:AbpIdentity.Roles.ManagePermissions,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpIdentity.Users.Create,pn:R,pk:admin,n:AbpIdentity.Users.Update,pn:R,pk:admin,n:AbpIdentity.Users.Delete,pn:R,pk:admin,n:AbpIdentity.Users.ManagePermissions,pn:R,pk:admin,n:AbpTenantManagement.Tenants,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Create,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Update,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Delete,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageFeatures,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:R,pk:admin,n:FeatureManagement.ManageHostFeatures,pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:04.696 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2 - - -2022-01-27 10:59:04.696 +08:00 [INF] Sending file. Request path: '/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\@fortawesome\fontawesome-free\webfonts\fa-solid-900.woff2' -2022-01-27 10:59:04.697 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2 - - - 200 78268 font/woff2 0.9240ms -2022-01-27 10:59:04.700 +08:00 [DBG] Executed AbpApplicationConfigurationAppService.GetAsync(). -2022-01-27 10:59:04.719 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:59:04.720 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc) in 62.5603ms -2022-01-27 10:59:04.720 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:04.724 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - - 200 81869 application/javascript 69.9238ms -2022-01-27 10:59:05.502 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 - - -2022-01-27 10:59:05.503 +08:00 [INF] Sending file. Request path: '/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2'. Physical path: 'C:\Github\volo\abp\templates\app-nolayers\aspnet-core\MyCompanyName.MyProjectName.Mvc.Mongo\wwwroot\libs\@fortawesome\fontawesome-free\webfonts\fa-regular-400.woff2' -2022-01-27 10:59:05.503 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 - - - 200 13224 font/woff2 1.1176ms -2022-01-27 10:59:06.395 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Identity/Roles - - -2022-01-27 10:59:06.400 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles -2022-01-27 10:59:06.400 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles -2022-01-27 10:59:06.400 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles -2022-01-27 10:59:06.400 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles -2022-01-27 10:59:06.401 +08:00 [INF] Executing endpoint '/Identity/Roles/Index' -2022-01-27 10:59:06.403 +08:00 [INF] Route matched with {page = "/Identity/Roles/Index", area = "", action = "", controller = ""}. Executing page /Identity/Roles/Index -2022-01-27 10:59:06.403 +08:00 [INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy -2022-01-27 10:59:06.404 +08:00 [INF] Executing handler method Volo.Abp.Identity.Web.Pages.Identity.Roles.IndexModel.OnGetAsync - ModelState is "Valid" -2022-01-27 10:59:06.404 +08:00 [INF] Executed handler method OnGetAsync, returned result Microsoft.AspNetCore.Mvc.RazorPages.PageResult. -2022-01-27 10:59:06.424 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Create -2022-01-27 10:59:06.425 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Create -2022-01-27 10:59:06.425 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles.Create -2022-01-27 10:59:06.425 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles.Create -2022-01-27 10:59:06.449 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 0.93 ms. -2022-01-27 10:59:06.451 +08:00 [DBG] Added bundle 'Volo.Abp.Identity.Web.Pages.Identity.Roles.IndexModel' to the page in 0.17 ms. -2022-01-27 10:59:06.454 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:06.454 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:06.454 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:06.454 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:06.455 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants -2022-01-27 10:59:06.455 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants -2022-01-27 10:59:06.456 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpTenantManagement.Tenants -2022-01-27 10:59:06.456 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpTenantManagement.Tenants -2022-01-27 10:59:06.461 +08:00 [DBG] Added bundle 'Basic.Global' to the page in 2.18 ms. -2022-01-27 10:59:06.463 +08:00 [DBG] Added bundle 'Volo.Abp.Identity.Web.Pages.Identity.Roles.IndexModel' to the page in 0.30 ms. -2022-01-27 10:59:06.463 +08:00 [INF] Executed page /Identity/Roles/Index in 60.285ms -2022-01-27 10:59:06.463 +08:00 [INF] Executed endpoint '/Identity/Roles/Index' -2022-01-27 10:59:06.463 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Identity/Roles - - - 200 - text/html;+charset=utf-8 68.6229ms -2022-01-27 10:59:06.483 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Pages/AbpPermissionManagement/permission-management-modal.css?_v=637787964678962551 - - -2022-01-27 10:59:06.483 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - -2022-01-27 10:59:06.483 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/client-proxies/identity-proxy.js?_v=637787964707611330 - - -2022-01-27 10:59:06.484 +08:00 [INF] Sending file. Request path: '/Pages/AbpPermissionManagement/permission-management-modal.css'. Physical path: 'N/A' -2022-01-27 10:59:06.484 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Pages/AbpPermissionManagement/permission-management-modal.css?_v=637787964678962551 - - - 200 230 text/css 0.6343ms -2022-01-27 10:59:06.484 +08:00 [INF] Sending file. Request path: '/client-proxies/identity-proxy.js'. Physical path: 'N/A' -2022-01-27 10:59:06.484 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/client-proxies/identity-proxy.js?_v=637787964707611330 - - - 200 6367 application/javascript 0.2968ms -2022-01-27 10:59:06.484 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Pages/identity/roles/index.js?_v=637787964707611330 - - -2022-01-27 10:59:06.485 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Pages/AbpPermissionManagement/permission-management-modal.js?_v=637787964678962551 - - -2022-01-27 10:59:06.485 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - -2022-01-27 10:59:06.485 +08:00 [INF] Sending file. Request path: '/Pages/identity/roles/index.js'. Physical path: 'N/A' -2022-01-27 10:59:06.485 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Pages/identity/roles/index.js?_v=637787964707611330 - - - 200 5590 application/javascript 0.4089ms -2022-01-27 10:59:06.485 +08:00 [INF] Sending file. Request path: '/Pages/AbpPermissionManagement/permission-management-modal.js'. Physical path: 'N/A' -2022-01-27 10:59:06.485 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Pages/AbpPermissionManagement/permission-management-modal.js?_v=637787964678962551 - - - 200 9586 application/javascript 0.3756ms -2022-01-27 10:59:06.486 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:06.486 +08:00 [INF] Route matched with {area = "Abp", action = "Get", controller = "AbpApplicationConfigurationScript", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Microsoft.AspNetCore.Mvc.ActionResult] Get() on controller Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:59:06.487 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:06.487 +08:00 [DBG] Executing AbpApplicationConfigurationAppService.GetAsync()... -2022-01-27 10:59:06.487 +08:00 [INF] Route matched with {area = "Abp", action = "GetAll", controller = "AbpServiceProxyScript", page = ""}. Executing controller action with signature Microsoft.AspNetCore.Mvc.ActionResult GetAll(Volo.Abp.AspNetCore.Mvc.ProxyScripting.ServiceProxyGenerationModel) on controller Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController (Volo.Abp.AspNetCore.Mvc). -2022-01-27 10:59:06.487 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:FeatureManagement.ManageHostFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:06.489 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:59:06.489 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc) in 2.1973ms -2022-01-27 10:59:06.489 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ProxyScripting.AbpServiceProxyScriptController.GetAll (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:06.489 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ServiceProxyScript - - - 200 1936 application/javascript 4.6680ms -2022-01-27 10:59:06.494 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Users.ManagePermissions,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Create,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Update,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.Delete,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:FeatureManagement.ManageHostFeatures,pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:SettingManagement.Emailing -2022-01-27 10:59:06.494 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Roles.Create,pn:R,pk:admin,n:AbpIdentity.Roles.Update,pn:R,pk:admin,n:AbpIdentity.Roles.Delete,pn:R,pk:admin,n:AbpIdentity.Roles.ManagePermissions,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpIdentity.Users.Create,pn:R,pk:admin,n:AbpIdentity.Users.Update,pn:R,pk:admin,n:AbpIdentity.Users.Delete,pn:R,pk:admin,n:AbpIdentity.Users.ManagePermissions,pn:R,pk:admin,n:AbpTenantManagement.Tenants,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Create,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Update,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Delete,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageFeatures,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:R,pk:admin,n:FeatureManagement.ManageHostFeatures,pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:06.500 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles,pn:R,pk:admin,n:AbpIdentity.Roles.Create,pn:R,pk:admin,n:AbpIdentity.Roles.Update,pn:R,pk:admin,n:AbpIdentity.Roles.Delete,pn:R,pk:admin,n:AbpIdentity.Roles.ManagePermissions,pn:R,pk:admin,n:AbpIdentity.Users,pn:R,pk:admin,n:AbpIdentity.Users.Create,pn:R,pk:admin,n:AbpIdentity.Users.Update,pn:R,pk:admin,n:AbpIdentity.Users.Delete,pn:R,pk:admin,n:AbpIdentity.Users.ManagePermissions,pn:R,pk:admin,n:AbpTenantManagement.Tenants,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Create,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Update,pn:R,pk:admin,n:AbpTenantManagement.Tenants.Delete,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageFeatures,pn:R,pk:admin,n:AbpTenantManagement.Tenants.ManageConnectionStrings,pn:R,pk:admin,n:FeatureManagement.ManageHostFeatures,pn:R,pk:admin,n:SettingManagement.Emailing -2022-01-27 10:59:06.519 +08:00 [DBG] Executed AbpApplicationConfigurationAppService.GetAsync(). -2022-01-27 10:59:06.529 +08:00 [INF] Executing ContentResult with HTTP Response ContentType of application/javascript -2022-01-27 10:59:06.530 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc) in 43.7625ms -2022-01-27 10:59:06.530 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationScriptController.Get (Volo.Abp.AspNetCore.Mvc)' -2022-01-27 10:59:06.530 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/Abp/ApplicationConfigurationScript - - - 200 81869 application/javascript 46.8168ms -2022-01-27 10:59:06.572 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44303/api/identity/roles?sorting=name%20asc&skipCount=0&maxResultCount=10 application/json - -2022-01-27 10:59:06.575 +08:00 [INF] Executing endpoint 'Volo.Abp.Identity.IdentityRoleController.GetListAsync (Volo.Abp.Identity.HttpApi)' -2022-01-27 10:59:06.578 +08:00 [INF] Route matched with {area = "identity", controller = "Role", action = "GetList", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.Abp.Application.Dtos.PagedResultDto`1[Volo.Abp.Identity.IdentityRoleDto]] GetListAsync(Volo.Abp.Identity.GetIdentityRolesInput) on controller Volo.Abp.Identity.IdentityRoleController (Volo.Abp.Identity.HttpApi). -2022-01-27 10:59:06.624 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles -2022-01-27 10:59:06.624 +08:00 [DBG] Found in the cache: pn:U,pk:20f03593-6a33-6755-f71c-3a01aba54777,n:AbpIdentity.Roles -2022-01-27 10:59:06.624 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:AbpIdentity.Roles -2022-01-27 10:59:06.625 +08:00 [DBG] Found in the cache: pn:R,pk:admin,n:AbpIdentity.Roles -2022-01-27 10:59:06.800 +08:00 [INF] Executing ObjectResult, writing value of type 'Volo.Abp.Application.Dtos.PagedResultDto`1[[Volo.Abp.Identity.IdentityRoleDto, Volo.Abp.Identity.Application.Contracts, Version=5.1.3.0, Culture=neutral, PublicKeyToken=null]]'. -2022-01-27 10:59:06.807 +08:00 [INF] Executed action Volo.Abp.Identity.IdentityRoleController.GetListAsync (Volo.Abp.Identity.HttpApi) in 229.5547ms -2022-01-27 10:59:06.807 +08:00 [INF] Executed endpoint 'Volo.Abp.Identity.IdentityRoleController.GetListAsync (Volo.Abp.Identity.HttpApi)' -2022-01-27 10:59:06.808 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44303/api/identity/roles?sorting=name%20asc&skipCount=0&maxResultCount=10 application/json - - 200 - application/json;+charset=utf-8 235.7429ms -2022-01-27 10:59:08.806 +08:00 [INF] Application is shutting down... -2022-01-27 10:59:08.817 +08:00 [DBG] Stopped background worker: Volo.Abp.IdentityServer.Tokens.TokenCleanupBackgroundWorker diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Menus/MyProjectNameMenuContributor.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Menus/MyProjectNameMenuContributor.cs new file mode 100644 index 0000000000..4a8b5c75f8 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Menus/MyProjectNameMenuContributor.cs @@ -0,0 +1,46 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Identity.Web.Navigation; +using Volo.Abp.SettingManagement.Web.Navigation; +using Volo.Abp.TenantManagement.Web.Navigation; +using Volo.Abp.UI.Navigation; + +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenuContributor : IMenuContributor +{ + public async Task ConfigureMenuAsync(MenuConfigurationContext context) + { + if (context.Menu.Name == StandardMenus.Main) + { + await ConfigureMainMenuAsync(context); + } + } + + private Task ConfigureMainMenuAsync(MenuConfigurationContext context) + { + var administration = context.Menu.GetAdministration(); + var l = context.GetLocalizer(); + + context.Menu.Items.Insert( + 0, + new ApplicationMenuItem( + MyProjectNameMenus.Home, + l["Menu:Home"], + "~/", + icon: "fas fa-home", + order: 0 + ) + ); + + if (MyProjectNameModule.IsMultiTenant) + { + administration.SetSubItemOrder(TenantManagementMenuNames.GroupName, 1); + } + else + { + administration.TryRemoveMenuItem(TenantManagementMenuNames.GroupName); + } + + return Task.CompletedTask; + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Menus/MyProjectNameMenus.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Menus/MyProjectNameMenus.cs new file mode 100644 index 0000000000..4c964afb14 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/Menus/MyProjectNameMenus.cs @@ -0,0 +1,10 @@ +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenus +{ + private const string Prefix = "MyProjectName"; + public const string Home = Prefix + ".Home"; + + //Add your menu items here... + +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameBrandingProvider.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameBrandingProvider.cs new file mode 100644 index 0000000000..fb6e75d065 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameBrandingProvider.cs @@ -0,0 +1,10 @@ +using Volo.Abp.DependencyInjection; +using Volo.Abp.Ui.Branding; + +namespace MyCompanyName.MyProjectName; + +[Dependency(ReplaceServices = true)] +public class MyProjectNameBrandingProvider : DefaultBrandingProvider +{ + public override string AppName => "MyProjectName"; +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs index cbbd6c46ac..99d2752f0f 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs @@ -1,6 +1,7 @@ using Microsoft.OpenApi.Models; using MyCompanyName.MyProjectName.Data; using MyCompanyName.MyProjectName.Localization; +using MyCompanyName.MyProjectName.Menus; using Volo.Abp; using Volo.Abp.Account; using Volo.Abp.Account.Web; @@ -37,6 +38,7 @@ using Volo.Abp.Swashbuckle; using Volo.Abp.TenantManagement; using Volo.Abp.TenantManagement.MongoDB; using Volo.Abp.TenantManagement.Web; +using Volo.Abp.UI.Navigation; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.Uow; using Volo.Abp.Validation.Localization; @@ -96,7 +98,7 @@ namespace MyCompanyName.MyProjectName; public class MyProjectNameModule : AbpModule { /* Single point to enable/disable multi-tenancy */ - private const bool IsMultiTenant = true; + public const bool IsMultiTenant = true; public override void PreConfigureServices(ServiceConfigurationContext context) { @@ -118,6 +120,7 @@ public class MyProjectNameModule : AbpModule ConfigureBundles(); ConfigureAutoMapper(); ConfigureSwagger(context.Services); + ConfigureNavigationServices(); ConfigureAutoApiControllers(); ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalization(); @@ -217,6 +220,14 @@ public class MyProjectNameModule : AbpModule }); } + private void ConfigureNavigationServices() + { + Configure(options => + { + options.MenuContributors.Add(new MyProjectNameMenuContributor()); + }); + } + private void ConfigureAutoApiControllers() { Configure(options => diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Data/MyProjectNameDbMigrationService.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Data/MyProjectNameDbMigrationService.cs index a0e15a7fd1..14db7d1e8d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Data/MyProjectNameDbMigrationService.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Data/MyProjectNameDbMigrationService.cs @@ -181,7 +181,7 @@ public class MyProjectNameDbMigrationService : ITransientDependency throw new Exception("Solution folder not found!"); } - return Path.Combine(slnDirectoryPath, "MyCompanyName.MyProjectName"); + return Path.Combine(slnDirectoryPath, "MyCompanyName.MyProjectName.Mvc"); } private string GetSolutionDirectoryPath() diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ar.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ar.json index 9fe7e951d9..1ee94530fb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ar.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ar.json @@ -2,6 +2,7 @@ "culture": "ar", "texts": { "Welcome_Title": "مرحبا", - "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP.", + "Menu:Home": "الرئيسية" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/cs.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/cs.json index d45dfff9a0..524a48e4eb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/cs.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/cs.json @@ -2,6 +2,7 @@ "culture": "cs", "texts": { "Welcome_Title": "Vítejte", - "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework." + "Welcome_Text": "Toto je minimalistická šablona pro spuštění aplikace s jednou vrstvou pro ABP Framework.", + "Menu:Home": "Úvod" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/de-DE.json index e325aa3949..da374cd84c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/de-DE.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/de-DE.json @@ -2,6 +2,7 @@ "culture": "de-DE", "texts": { "Welcome_Title": "Willkommen", - "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en-GB.json index 30407ce214..cf24737f24 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en-GB.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en-GB.json @@ -2,6 +2,7 @@ "culture": "en-GB", "texts": { "Welcome_Title": "Welcome_Title", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en.json index 114854aabf..3ee17295cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/en.json @@ -2,6 +2,7 @@ "culture": "en", "texts": { "Welcome_Title": "Welcome", - "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework.", + "Menu:Home": "Home" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/es.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/es.json index dbc2280cdc..6e138d3e1d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/es.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/es.json @@ -2,6 +2,7 @@ "culture": "es", "texts": { "Welcome_Title": "Bienvenido", - "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework." + "Welcome_Text": "Esta es una plantilla de inicio de aplicación minimalista de una sola capa para ABP Framework.", + "Menu:Home": "Inicio" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fi.json index 96f8386846..e963857efc 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fi.json @@ -2,6 +2,7 @@ "culture": "fi", "texts": { "Welcome_Title": "Tervetuloa", - "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille.", + "Menu:Home": "Koti" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fr.json index 6148d1fa13..b2c2b620f7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/fr.json @@ -2,6 +2,7 @@ "culture": "fr", "texts": { "Welcome_Title": "Bienvenue", - "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP." + "Welcome_Text": "Il s'agit d'un modèle de démarrage d'application minimaliste à une seule couche pour le cadre ABP.", + "Menu:Home": "Accueil" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hi.json index c741e93703..ec16d655b5 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hi.json @@ -2,6 +2,7 @@ "culture": "hi", "texts": { "Welcome_Title": "स्वागत हे", - "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।", + "Menu:Home": "घर" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hu.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hu.json index cf9f2e7b09..fa6f372175 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hu.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/hu.json @@ -2,6 +2,7 @@ "culture": "hu", "texts": { "Welcome_Title": "Üdvözlöm", - "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez.", + "Menu:Home": "Kezdőlap" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/is.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/is.json index 41b8ed6afb..080c0baca2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/is.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/is.json @@ -2,6 +2,7 @@ "culture": "is", "texts": { "Welcome_Title": "Velkomin", - "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework.", + "Menu:Home": "Heim" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/it.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/it.json index 8722bc73c1..57c3cf63d4 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/it.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/it.json @@ -2,6 +2,7 @@ "culture": "it", "texts": { "Welcome_Title": "Benvenuto", - "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/nl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/nl.json index e798081c42..525ee02d10 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/nl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/nl.json @@ -2,6 +2,7 @@ "culture": "nl", "texts": { "Welcome_Title": "Welkom", - "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pl-PL.json index ba7c3764ee..2ebf70a5e1 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pl-PL.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pl-PL.json @@ -2,6 +2,7 @@ "culture": "pl-PL", "texts": { "Welcome_Title": "Witaj", - "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework.", + "Menu:Home": "Home" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pt-BR.json index 1e45a233c9..96e45d3c3e 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pt-BR.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/pt-BR.json @@ -2,6 +2,7 @@ "culture": "pt-BR", "texts": { "Welcome_Title": "Seja bem-vindo!", - "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework." + "Welcome_Text": "Este é um modelo de inicialização de aplicativo de camada única minimalista para o ABP Framework.", + "Menu:Home": "Principal" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ro-RO.json index bd31e2cbd6..48102a75b7 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ro-RO.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ro-RO.json @@ -2,6 +2,7 @@ "culture": "ro-RO", "texts": { "Welcome_Title": "Bun venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Acasă" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ru.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ru.json index 82ed95eaf8..eb4cc96b5d 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ru.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/ru.json @@ -2,6 +2,7 @@ "culture": "ru", "texts": { "Welcome_Title": "Bine ati venit", - "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP." + "Welcome_Text": "Acesta este un șablon de pornire a aplicației minimaliste, cu un singur strat, pentru Cadrul ABP.", + "Menu:Home": "Главная" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sk.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sk.json index cdaf8e7c3d..227d0a74cb 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sk.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sk.json @@ -2,6 +2,7 @@ "culture": "sk", "texts": { "Welcome_Title": "Vitajte", - "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP." + "Welcome_Text": "Toto je minimalistická šablóna na spustenie aplikácie s jednou vrstvou pre rámec ABP.", + "Menu:Home": "Domov" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sl.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sl.json index 5d595a4910..29876afa0c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sl.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/sl.json @@ -2,6 +2,7 @@ "culture": "sl", "texts": { "Welcome_Title": "Dobrodošli", - "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework.", + "Menu:Home": "Domov" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/tr.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/tr.json index 06a30cd6b9..6cbdac76a2 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/tr.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/tr.json @@ -2,6 +2,7 @@ "culture": "tr", "texts": { "Welcome_Title": "Hoşgeldiniz", - "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur." + "Welcome_Text": "Bu proje tek katmanlı ABP uygulamaları yapmak için bir başlangıç şablonudur.", + "Menu:Home": "Ana sayfa" } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/vi.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/vi.json index 9e61a67f6c..f2e55bd7b0 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/vi.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/vi.json @@ -2,6 +2,7 @@ "culture": "vi", "texts": { "Welcome_Title": "Chào mừng bạn", - "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework." + "Welcome_Text": "Đây là một mẫu khởi động ứng dụng lớp đơn, tối giản cho ABP Framework.", + "Menu:Home": "Trang chủ" } } diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hans.json index c0dcb66f0a..6a66abeb9c 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hans.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hans.json @@ -1,7 +1,8 @@ { "culture": "zh-Hans", - "texts": { + "texts": { "Welcome_Title": "欢迎", - "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." - } - } \ No newline at end of file + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板.", + "Menu:Home": "首页" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hant.json index fe347fedb9..7b4872c974 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hant.json +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Localization/MyProjectName/zh-Hant.json @@ -1,7 +1,8 @@ { "culture": "zh-Hant", - "texts": { + "texts": { "Welcome_Title": "歡迎", - "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." - } - } \ No newline at end of file + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板.", + "Menu:Home": "首頁" + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Menus/MyProjectNameMenuContributor.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Menus/MyProjectNameMenuContributor.cs new file mode 100644 index 0000000000..4a8b5c75f8 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Menus/MyProjectNameMenuContributor.cs @@ -0,0 +1,46 @@ +using MyCompanyName.MyProjectName.Localization; +using Volo.Abp.Identity.Web.Navigation; +using Volo.Abp.SettingManagement.Web.Navigation; +using Volo.Abp.TenantManagement.Web.Navigation; +using Volo.Abp.UI.Navigation; + +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenuContributor : IMenuContributor +{ + public async Task ConfigureMenuAsync(MenuConfigurationContext context) + { + if (context.Menu.Name == StandardMenus.Main) + { + await ConfigureMainMenuAsync(context); + } + } + + private Task ConfigureMainMenuAsync(MenuConfigurationContext context) + { + var administration = context.Menu.GetAdministration(); + var l = context.GetLocalizer(); + + context.Menu.Items.Insert( + 0, + new ApplicationMenuItem( + MyProjectNameMenus.Home, + l["Menu:Home"], + "~/", + icon: "fas fa-home", + order: 0 + ) + ); + + if (MyProjectNameModule.IsMultiTenant) + { + administration.SetSubItemOrder(TenantManagementMenuNames.GroupName, 1); + } + else + { + administration.TryRemoveMenuItem(TenantManagementMenuNames.GroupName); + } + + return Task.CompletedTask; + } +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Menus/MyProjectNameMenus.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Menus/MyProjectNameMenus.cs new file mode 100644 index 0000000000..4c964afb14 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/Menus/MyProjectNameMenus.cs @@ -0,0 +1,10 @@ +namespace MyCompanyName.MyProjectName.Menus; + +public class MyProjectNameMenus +{ + private const string Prefix = "MyProjectName"; + public const string Home = Prefix + ".Home"; + + //Add your menu items here... + +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameBrandingProvider.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameBrandingProvider.cs new file mode 100644 index 0000000000..fb6e75d065 --- /dev/null +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameBrandingProvider.cs @@ -0,0 +1,10 @@ +using Volo.Abp.DependencyInjection; +using Volo.Abp.Ui.Branding; + +namespace MyCompanyName.MyProjectName; + +[Dependency(ReplaceServices = true)] +public class MyProjectNameBrandingProvider : DefaultBrandingProvider +{ + public override string AppName => "MyProjectName"; +} diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs index 4102ec66a5..3a9d480947 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs @@ -1,6 +1,7 @@ using Microsoft.OpenApi.Models; using MyCompanyName.MyProjectName.Data; using MyCompanyName.MyProjectName.Localization; +using MyCompanyName.MyProjectName.Menus; using Volo.Abp; using Volo.Abp.Account; using Volo.Abp.Account.Web; @@ -38,6 +39,7 @@ using Volo.Abp.Swashbuckle; using Volo.Abp.TenantManagement; using Volo.Abp.TenantManagement.EntityFrameworkCore; using Volo.Abp.TenantManagement.Web; +using Volo.Abp.UI.Navigation; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.Validation.Localization; using Volo.Abp.VirtualFileSystem; @@ -97,7 +99,7 @@ namespace MyCompanyName.MyProjectName; public class MyProjectNameModule : AbpModule { /* Single point to enable/disable multi-tenancy */ - private const bool IsMultiTenant = true; + public const bool IsMultiTenant = true; public override void PreConfigureServices(ServiceConfigurationContext context) { @@ -119,6 +121,7 @@ public class MyProjectNameModule : AbpModule ConfigureBundles(); ConfigureAutoMapper(); ConfigureSwagger(context.Services); + ConfigureNavigationServices(); ConfigureAutoApiControllers(); ConfigureVirtualFiles(hostingEnvironment); ConfigureLocalization(); @@ -219,6 +222,14 @@ public class MyProjectNameModule : AbpModule }); } + private void ConfigureNavigationServices() + { + Configure(options => + { + options.MenuContributors.Add(new MyProjectNameMenuContributor()); + }); + } + private void ConfigureAutoApiControllers() { Configure(options =>