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 107dc2d21d..e93053db6e 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}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip"); + $"({AppTemplate.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/TemplateInfoProvider.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs index b1c1674ae0..49b8ef95ae 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 @@ -52,6 +52,8 @@ public class TemplateInfoProvider : ITemplateInfoProvider, ITransientDependency { case AppTemplate.TemplateName: return new AppTemplate(); + case AppNolayersTemplate.TemplateName: + return new AppNolayersTemplate(); case AppProTemplate.TemplateName: return new AppProTemplate(); case MicroserviceProTemplate.TemplateName: 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 new file mode 100644 index 0000000000..44bd3dcda7 --- /dev/null +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs @@ -0,0 +1,16 @@ +namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; + +public class AppNolayersTemplate : AppTemplateBase +{ + /// + /// "app". + /// + public const string TemplateName = "app-nolayers"; + + public AppNolayersTemplate() + : base(TemplateName) + { + //TODO: Change URL + DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application"; + } +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ar.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ar.json new file mode 100644 index 0000000000..9fe7e951d9 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ar.json @@ -0,0 +1,7 @@ +{ + "culture": "ar", + "texts": { + "Welcome_Title": "مرحبا", + "Welcome_Text": "هذا هو قالب بدء تشغيل تطبيق ذو طبقة واحدة مبسط لإطار عمل ABP." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/cs.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/cs.json new file mode 100644 index 0000000000..d45dfff9a0 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/cs.json @@ -0,0 +1,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." + } +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/de-DE.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/de-DE.json new file mode 100644 index 0000000000..e325aa3949 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/de-DE.json @@ -0,0 +1,7 @@ +{ + "culture": "de-DE", + "texts": { + "Welcome_Title": "Willkommen", + "Welcome_Text": "Dies ist eine minimalistische, einschichtige Anwendungsstartvorlage für das ABP-Framework." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/en-GB.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/en-GB.json new file mode 100644 index 0000000000..30407ce214 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/en-GB.json @@ -0,0 +1,7 @@ +{ + "culture": "en-GB", + "texts": { + "Welcome_Title": "Welcome_Title", + "Welcome_Text": "This is a minimalist, single layer application startup template for the ABP Framework." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/es.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/es.json new file mode 100644 index 0000000000..dbc2280cdc --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/es.json @@ -0,0 +1,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." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/fi.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/fi.json new file mode 100644 index 0000000000..96f8386846 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/fi.json @@ -0,0 +1,7 @@ +{ + "culture": "fi", + "texts": { + "Welcome_Title": "Tervetuloa", + "Welcome_Text": "Tämä on minimalistinen yksikerroksinen sovelluksen käynnistysmalli ABP Frameworkille." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/fr.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/fr.json new file mode 100644 index 0000000000..6148d1fa13 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/fr.json @@ -0,0 +1,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." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/hi.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/hi.json new file mode 100644 index 0000000000..c741e93703 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/hi.json @@ -0,0 +1,7 @@ +{ + "culture": "hi", + "texts": { + "Welcome_Title": "स्वागत हे", + "Welcome_Text": "यह एबीपी फ्रेमवर्क के लिए एक न्यूनतम, सिंगल लेयर एप्लिकेशन स्टार्टअप टेम्प्लेट है।" + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/hu.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/hu.json new file mode 100644 index 0000000000..cf9f2e7b09 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/hu.json @@ -0,0 +1,7 @@ +{ + "culture": "hu", + "texts": { + "Welcome_Title": "Üdvözlöm", + "Welcome_Text": "Ez egy minimalista, egyrétegű alkalmazásindítási sablon az ABP-keretrendszerhez." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/is.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/is.json new file mode 100644 index 0000000000..41b8ed6afb --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/is.json @@ -0,0 +1,7 @@ +{ + "culture": "is", + "texts": { + "Welcome_Title": "Velkomin", + "Welcome_Text": "Þetta er lægstur, eins lags ræsingarsniðmát fyrir ABP Framework." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/it.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/it.json new file mode 100644 index 0000000000..8722bc73c1 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/it.json @@ -0,0 +1,7 @@ +{ + "culture": "it", + "texts": { + "Welcome_Title": "Benvenuto", + "Welcome_Text": "Questo è un modello di avvio dell'applicazione minimalista a livello singolo per ABP Framework." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/nl.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/nl.json new file mode 100644 index 0000000000..e798081c42 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/nl.json @@ -0,0 +1,7 @@ +{ + "culture": "nl", + "texts": { + "Welcome_Title": "Welkom", + "Welcome_Text": "Dit is een minimalistische, enkellaagse applicatie-opstartsjabloon voor het ABP Framework." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/pl-PL.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/pl-PL.json new file mode 100644 index 0000000000..ba7c3764ee --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/pl-PL.json @@ -0,0 +1,7 @@ +{ + "culture": "pl-PL", + "texts": { + "Welcome_Title": "Witaj", + "Welcome_Text": "Jest to minimalistyczny, jednowarstwowy szablon uruchamiania aplikacji dla ABP Framework." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/pt-BR.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/pt-BR.json new file mode 100644 index 0000000000..1e45a233c9 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/pt-BR.json @@ -0,0 +1,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." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ro-RO.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ro-RO.json new file mode 100644 index 0000000000..bd31e2cbd6 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ro-RO.json @@ -0,0 +1,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." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ru.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ru.json new file mode 100644 index 0000000000..82ed95eaf8 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/ru.json @@ -0,0 +1,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." + } +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/sk.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/sk.json new file mode 100644 index 0000000000..cdaf8e7c3d --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/sk.json @@ -0,0 +1,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." + } +} \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/sl.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/sl.json new file mode 100644 index 0000000000..5d595a4910 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/sl.json @@ -0,0 +1,7 @@ +{ + "culture": "sl", + "texts": { + "Welcome_Title": "Dobrodošli", + "Welcome_Text": "To je minimalistična enoslojna predloga za zagon aplikacije za ABP Framework." + } +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/vi.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/vi.json new file mode 100644 index 0000000000..9e61a67f6c --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/vi.json @@ -0,0 +1,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." + } +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/zh-Hans.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/zh-Hans.json new file mode 100644 index 0000000000..c0dcb66f0a --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/zh-Hans.json @@ -0,0 +1,7 @@ +{ + "culture": "zh-Hans", + "texts": { + "Welcome_Title": "欢迎", + "Welcome_Text": "这是ABP框架的极简单层应用程序启动模板." + } + } \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/zh-Hant.json b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/zh-Hant.json new file mode 100644 index 0000000000..fe347fedb9 --- /dev/null +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Localization/MyProjectName/zh-Hant.json @@ -0,0 +1,7 @@ +{ + "culture": "zh-Hant", + "texts": { + "Welcome_Title": "歡迎", + "Welcome_Text": "這是 ABP 框架的極簡單層應用程序啟動模板." + } + } \ No newline at end of file diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/MyCompanyName.MyProjectName.csproj b/templates/app-nolayers/MyCompanyName.MyProjectName/MyCompanyName.MyProjectName.csproj index 7bc10614ab..20d8b634db 100644 --- a/templates/app-nolayers/MyCompanyName.MyProjectName/MyCompanyName.MyProjectName.csproj +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/MyCompanyName.MyProjectName.csproj @@ -10,70 +10,70 @@ - + - - - - - - - + + + + + + + - - - + + + - + - - - - - + + + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - + - + - + - + - + - + runtime; build; native; contentfiles; analyzers @@ -85,7 +85,7 @@ - + diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/MyProjectNameModule.cs b/templates/app-nolayers/MyCompanyName.MyProjectName/MyProjectNameModule.cs index 8df496e37f..f9bc05c940 100644 --- a/templates/app-nolayers/MyCompanyName.MyProjectName/MyProjectNameModule.cs +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/MyProjectNameModule.cs @@ -53,39 +53,39 @@ namespace MyCompanyName.MyProjectName; typeof(AbpAspNetCoreAuthenticationJwtBearerModule), typeof(AbpAspNetCoreSerilogModule), typeof(AbpAspNetCoreMvcUiBasicThemeModule), - + // Account module packages typeof(AbpAccountApplicationModule), typeof(AbpAccountHttpApiModule), typeof(AbpAccountWebIdentityServerModule), - + // Identity module packages typeof(AbpIdentityApplicationModule), typeof(AbpIdentityHttpApiModule), typeof(AbpIdentityEntityFrameworkCoreModule), typeof(AbpIdentityServerEntityFrameworkCoreModule), typeof(AbpIdentityWebModule), - + // Audit logging module packages typeof(AbpAuditLoggingEntityFrameworkCoreModule), - + // Permission Management module packages typeof(AbpPermissionManagementApplicationModule), typeof(AbpPermissionManagementHttpApiModule), typeof(AbpPermissionManagementEntityFrameworkCoreModule), - + // Tenant Management module packages typeof(AbpTenantManagementApplicationModule), typeof(AbpTenantManagementHttpApiModule), typeof(AbpTenantManagementEntityFrameworkCoreModule), typeof(AbpTenantManagementWebModule), - + // Feature Management module packages typeof(AbpFeatureManagementApplicationModule), typeof(AbpFeatureManagementEntityFrameworkCoreModule), typeof(AbpFeatureManagementHttpApiModule), typeof(AbpFeatureManagementWebModule), - + // Setting Management module packages typeof(AbpSettingManagementApplicationModule), typeof(AbpSettingManagementEntityFrameworkCoreModule), @@ -96,7 +96,7 @@ public class MyProjectNameModule : AbpModule { /* Single point to enable/disable multi-tenancy */ private const bool IsMultiTenant = true; - + public override void PreConfigureServices(ServiceConfigurationContext context) { context.Services.PreConfigure(options => @@ -154,7 +154,7 @@ public class MyProjectNameModule : AbpModule ); }); } - + private void ConfigureAuthentication(IServiceCollection services, IConfiguration configuration) { services.AddAuthentication() @@ -176,9 +176,26 @@ public class MyProjectNameModule : AbpModule .AddVirtualJson("/Localization/MyProjectName"); options.DefaultResourceType = typeof(MyProjectNameResource); - + options.Languages.Add(new LanguageInfo("en", "en", "English")); options.Languages.Add(new LanguageInfo("tr", "tr", "Türkçe")); + options.Languages.Add(new LanguageInfo("ar", "ar", "العربية")); + options.Languages.Add(new LanguageInfo("cs", "cs", "Čeština")); + options.Languages.Add(new LanguageInfo("en-GB", "en-GB", "English (UK)")); + options.Languages.Add(new LanguageInfo("hu", "hu", "Magyar")); + options.Languages.Add(new LanguageInfo("fi", "fi", "Finnish")); + options.Languages.Add(new LanguageInfo("fr", "fr", "Français")); + options.Languages.Add(new LanguageInfo("hi", "hi", "Hindi", "in")); + options.Languages.Add(new LanguageInfo("is", "is", "Icelandic", "is")); + options.Languages.Add(new LanguageInfo("it", "it", "Italiano", "it")); + options.Languages.Add(new LanguageInfo("pt-BR", "pt-BR", "Português")); + options.Languages.Add(new LanguageInfo("ro-RO", "ro-RO", "Română")); + options.Languages.Add(new LanguageInfo("ru", "ru", "Русский")); + options.Languages.Add(new LanguageInfo("sk", "sk", "Slovak")); + options.Languages.Add(new LanguageInfo("zh-Hans", "zh-Hans", "简体中文")); + options.Languages.Add(new LanguageInfo("zh-Hant", "zh-Hant", "繁體中文")); + options.Languages.Add(new LanguageInfo("de-DE", "de-DE", "Deutsch", "de")); + options.Languages.Add(new LanguageInfo("es", "es", "Español")); }); Configure(options => @@ -242,7 +259,7 @@ public class MyProjectNameModule : AbpModule */ options.AddDefaultRepositories(includeAllEntities: true); }); - + Configure(options => { options.Configure(configurationContext => @@ -275,24 +292,24 @@ public class MyProjectNameModule : AbpModule app.UseRouting(); app.UseAuthentication(); app.UseJwtTokenMiddleware(); - + if (IsMultiTenant) { app.UseMultiTenancy(); } - + app.UseUnitOfWork(); app.UseIdentityServer(); app.UseAuthorization(); - + app.UseSwagger(); app.UseAbpSwaggerUI(options => { options.SwaggerEndpoint("/swagger/v1/swagger.json", "MyProjectName API"); }); - + app.UseAuditing(); app.UseAbpSerilogEnrichers(); app.UseConfiguredEndpoints(); } -} \ No newline at end of file +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Program.cs b/templates/app-nolayers/MyCompanyName.MyProjectName/Program.cs index 9983a19631..a30410cd0f 100644 --- a/templates/app-nolayers/MyCompanyName.MyProjectName/Program.cs +++ b/templates/app-nolayers/MyCompanyName.MyProjectName/Program.cs @@ -5,32 +5,39 @@ namespace MyCompanyName.MyProjectName; public class Program { - public static int Main(string[] args) + public async static Task Main(string[] args) { Log.Logger = new LoggerConfiguration() #if DEBUG - .MinimumLevel.Debug() + .MinimumLevel.Debug() #else - .MinimumLevel.Information() + .MinimumLevel.Information() #endif - .MinimumLevel.Override("Microsoft", LogEventLevel.Information) - .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) - .Enrich.FromLogContext() - .WriteTo.Async(c => c.File("Logs/logs.txt")) + .MinimumLevel.Override("Microsoft", LogEventLevel.Information) + .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) + .Enrich.FromLogContext() + .WriteTo.Async(c => c.File("Logs/logs.txt")) #if DEBUG - .WriteTo.Async(c => c.Console()) + .WriteTo.Async(c => c.Console()) #endif - .CreateLogger(); + .CreateLogger(); try { - Log.Information("Starting web host."); - CreateHostBuilder(args).Build().Run(); + Log.Information("Starting MyCompanyName.MyProjectName."); + var builder = WebApplication.CreateBuilder(args); + builder.Host.AddAppSettingsSecretsJson() + .UseAutofac() + .UseSerilog(); + await builder.AddApplicationAsync(); + var app = builder.Build(); + await app.InitializeApplicationAsync(); + await app.RunAsync(); return 0; } catch (Exception ex) { - Log.Fatal(ex, "Host terminated unexpectedly!"); + Log.Fatal(ex, "MyCompanyName.MyProjectName terminated unexpectedly!"); return 1; } finally @@ -38,14 +45,4 @@ public class Program Log.CloseAndFlush(); } } - - internal static IHostBuilder CreateHostBuilder(string[] args) => - Host.CreateDefaultBuilder(args) - .AddAppSettingsSecretsJson() - .ConfigureWebHostDefaults(webBuilder => - { - webBuilder.UseStartup(); - }) - .UseAutofac() - .UseSerilog(); -} \ No newline at end of file +} diff --git a/templates/app-nolayers/MyCompanyName.MyProjectName/Startup.cs b/templates/app-nolayers/MyCompanyName.MyProjectName/Startup.cs deleted file mode 100644 index f767d6482d..0000000000 --- a/templates/app-nolayers/MyCompanyName.MyProjectName/Startup.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace MyCompanyName.MyProjectName; - -public class Startup -{ - public void ConfigureServices(IServiceCollection services) - { - services.AddApplication(); - } - - public void Configure(IApplicationBuilder app) - { - app.InitializeApplication(); - } -} \ No newline at end of file