diff --git a/.gitignore b/.gitignore
index f3f48c5963..c0347428f2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -315,3 +315,6 @@ tempkey.jwk
# ABP Analyzing files
*.abppkg.analyze.json
+
+# appsettings.secrets.json
+appsettings.secrets.json
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs
index e8a8be959e..fd600e2c5e 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Building/Steps/CreateAppSettingsSecretsStep.cs
@@ -8,15 +8,14 @@ namespace Volo.Abp.Cli.ProjectBuilding.Building.Steps
{
private const string FileName = "appsettings.secrets.json";
private const string AppSettingsFileName = "appsettings.json";
+ private const string AppSettingsPlaceholder = "";
public override void Execute(ProjectBuildContext context)
{
var appSettingsFiles = context.Files
.Where(x =>
x.Name.EndsWith(AppSettingsFileName) &&
- NotTestProject(x.Name) &&
- NotBlazorWasmProject(x.Name) &&
- NotMigratorProject(x.Name))
+ NotBlazorWasmProject(x.Name))
.ToList();
var content = context.Template.IsPro()
@@ -30,11 +29,13 @@ namespace Volo.Abp.Cli.ProjectBuilding.Building.Steps
content.GetBytes(),
false));
}
- }
- private static bool NotTestProject(string fileName)
- {
- return !fileName.StartsWith("/aspnet-core/test");
+ var projectFiles = context.Files.Where(x => x.Content.Contains(AppSettingsPlaceholder)).ToList();
+
+ foreach (var projectFile in projectFiles)
+ {
+ projectFile.SetContent(ReplaceAppSettingsSecretsPlaceholder(projectFile.Content));
+ }
}
private static bool NotBlazorWasmProject(string fileName)
@@ -42,9 +43,14 @@ namespace Volo.Abp.Cli.ProjectBuilding.Building.Steps
return !fileName.Contains("Blazor/wwwroot") && !fileName.Contains("Blazor.Host/wwwroot");
}
- public static bool NotMigratorProject(string fileName)
+ private static string ReplaceAppSettingsSecretsPlaceholder(string content)
{
- return !fileName.Contains("DbMigrator");
+ var replaceContent = $"{Environment.NewLine}" +
+ $" {Environment.NewLine}" +
+ $" PreserveNewest{Environment.NewLine}" +
+ $" Always{Environment.NewLine}" +
+ " ";
+ return content.Replace(AppSettingsPlaceholder, replaceContent);
}
}
}
diff --git a/templates/app/aspnet-core/.gitignore b/templates/app/aspnet-core/.gitignore
index c412a346fc..726086cb40 100644
--- a/templates/app/aspnet-core/.gitignore
+++ b/templates/app/aspnet-core/.gitignore
@@ -259,5 +259,4 @@ src/MyCompanyName.MyProjectName.HttpApi.Host/Logs/*
src/MyCompanyName.MyProjectName.HttpApi.HostWithIds/Logs/*
src/MyCompanyName.MyProjectName.DbMigrator/Logs/*
src/MyCompanyName.MyProjectName.Blazor.Server/Logs/*
-src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Logs/*
-appsettings.secrets.json
\ No newline at end of file
+src/MyCompanyName.MyProjectName.Blazor.Server.Tiered/Logs/*
\ No newline at end of file
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/DbMigratorHostedService.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/DbMigratorHostedService.cs
index 89b12bcc03..08a58a9899 100644
--- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/DbMigratorHostedService.cs
+++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/DbMigratorHostedService.cs
@@ -1,5 +1,6 @@
using System.Threading;
using System.Threading.Tasks;
+using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using MyCompanyName.MyProjectName.Data;
@@ -11,16 +12,19 @@ namespace MyCompanyName.MyProjectName.DbMigrator
public class DbMigratorHostedService : IHostedService
{
private readonly IHostApplicationLifetime _hostApplicationLifetime;
+ private readonly IConfiguration _configuration;
- public DbMigratorHostedService(IHostApplicationLifetime hostApplicationLifetime)
+ public DbMigratorHostedService(IHostApplicationLifetime hostApplicationLifetime, IConfiguration configuration)
{
_hostApplicationLifetime = hostApplicationLifetime;
+ _configuration = configuration;
}
public async Task StartAsync(CancellationToken cancellationToken)
{
using (var application = AbpApplicationFactory.Create(options =>
{
+ options.Services.ReplaceConfiguration(_configuration);
options.UseAutofac();
options.Services.AddLogging(c => c.AddSerilog());
}))
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/MyCompanyName.MyProjectName.DbMigrator.csproj b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/MyCompanyName.MyProjectName.DbMigrator.csproj
index 471cab6cda..9a0ffd986a 100644
--- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/MyCompanyName.MyProjectName.DbMigrator.csproj
+++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/MyCompanyName.MyProjectName.DbMigrator.csproj
@@ -9,13 +9,11 @@
-
-
-
PreserveNewest
Always
+
@@ -30,7 +28,7 @@
-
+
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/Program.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/Program.cs
index 85ea0e1111..0bc45f3f34 100644
--- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/Program.cs
+++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.DbMigrator/Program.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading.Tasks;
+using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
@@ -31,6 +32,10 @@ namespace MyCompanyName.MyProjectName.DbMigrator
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
+ .ConfigureAppConfiguration(build =>
+ {
+ build.AddJsonFile("appsettings.secrets.json", optional: true);
+ })
.ConfigureLogging((context, logging) => logging.ClearProviders())
.ConfigureServices((hostContext, services) =>
{
diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs
index ae929ced30..d16fb65f9e 100644
--- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs
+++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs
@@ -1,6 +1,7 @@
using Microsoft.Extensions.Hosting;
using System.Threading;
using System.Threading.Tasks;
+using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp;
@@ -8,9 +9,19 @@ namespace MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp
{
public class ConsoleTestAppHostedService : IHostedService
{
+ private readonly IConfiguration _configuration;
+
+ public ConsoleTestAppHostedService(IConfiguration configuration)
+ {
+ _configuration = configuration;
+ }
+
public async Task StartAsync(CancellationToken cancellationToken)
{
- using (var application = AbpApplicationFactory.Create())
+ using (var application = AbpApplicationFactory.Create(options =>
+ {
+ options.Services.ReplaceConfiguration(_configuration);
+ }))
{
application.Initialize();
diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj
index e78ce77d08..83d96c2429 100644
--- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj
+++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj
@@ -7,13 +7,11 @@
-
-
-
PreserveNewest
Always
+
diff --git a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs
index 1e24d8a349..e296ed9a11 100644
--- a/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs
+++ b/templates/app/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs
@@ -1,4 +1,5 @@
using System.Threading.Tasks;
+using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
@@ -13,6 +14,10 @@ namespace MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
+ .ConfigureAppConfiguration(build =>
+ {
+ build.AddJsonFile("appsettings.secrets.json", optional: true);
+ })
.ConfigureServices((hostContext, services) =>
{
services.AddHostedService();
diff --git a/templates/module/aspnet-core/.gitignore b/templates/module/aspnet-core/.gitignore
index 9a86ee0025..aaadbff002 100644
--- a/templates/module/aspnet-core/.gitignore
+++ b/templates/module/aspnet-core/.gitignore
@@ -256,5 +256,4 @@ host/MyCompanyName.MyProjectName.IdentityServer/Logs/logs.txt
host/MyCompanyName.MyProjectName.HttpApi.Host/Logs/logs.txt
host/MyCompanyName.MyProjectName.Web.Host/Logs/logs.txt
host/MyCompanyName.MyProjectName.Web.Unified/Logs/logs.txt
-host/MyCompanyName.MyProjectName.Blazor.Server.Host/Logs/logs.txt
-appsettings.secrets.json
\ No newline at end of file
+host/MyCompanyName.MyProjectName.Blazor.Server.Host/Logs/logs.txt
\ No newline at end of file
diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs
index 1ea99ce263..68c4daec56 100644
--- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs
+++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/ConsoleTestAppHostedService.cs
@@ -1,6 +1,7 @@
using Microsoft.Extensions.Hosting;
using System.Threading;
using System.Threading.Tasks;
+using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp;
@@ -8,9 +9,19 @@ namespace MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp
{
public class ConsoleTestAppHostedService : IHostedService
{
+ private readonly IConfiguration _configuration;
+
+ public ConsoleTestAppHostedService(IConfiguration configuration)
+ {
+ _configuration = configuration;
+ }
+
public async Task StartAsync(CancellationToken cancellationToken)
{
- using (var application = AbpApplicationFactory.Create())
+ using (var application = AbpApplicationFactory.Create(options=>
+ {
+ options.Services.ReplaceConfiguration(_configuration);
+ }))
{
application.Initialize();
diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj
index ab46bde28b..5ebe04513a 100644
--- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj
+++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp.csproj
@@ -17,6 +17,7 @@
PreserveNewest
Always
+
diff --git a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs
index 1e24d8a349..e296ed9a11 100644
--- a/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs
+++ b/templates/module/aspnet-core/test/MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp/Program.cs
@@ -1,4 +1,5 @@
using System.Threading.Tasks;
+using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
@@ -13,6 +14,10 @@ namespace MyCompanyName.MyProjectName.HttpApi.Client.ConsoleTestApp
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
+ .ConfigureAppConfiguration(build =>
+ {
+ build.AddJsonFile("appsettings.secrets.json", optional: true);
+ })
.ConfigureServices((hostContext, services) =>
{
services.AddHostedService();