Browse Source

feat(微服务模块): 更新数据库上下文配置,支持多种数据库类型并调整项目名称。

pull/1067/head^2^2
feijie 1 year ago
parent
commit
634c1af51b
  1. 2
      aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/Dockerfile
  2. 26
      aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/MicroServiceApplicationsSingleModule.Configure.cs
  3. 37
      aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/MicroServiceApplicationsSingleModule.cs
  4. 16
      aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/PackageName.CompanyName.ProjectName.AIO.Host.csproj
  5. 4
      aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/Properties/launchSettings.json

2
aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/Dockerfile

@ -16,4 +16,4 @@ VOLUME [ "./app/Modules" ]
RUN apt update
RUN apt install wget -y
ENTRYPOINT ["dotnet", "LY.MicroService.Applications.Single.dll"]
ENTRYPOINT ["dotnet", "PackageName.CompanyName.ProjectName.AIO.dll"]

26
aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/MicroServiceApplicationsSingleModule.Configure.cs

@ -552,7 +552,7 @@ public partial class MicroServiceApplicationsSingleModule
{
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<MicroServiceApplicationsSingleModule>("LY.MicroService.Applications.Single");
options.FileSets.AddEmbedded<MicroServiceApplicationsSingleModule>("PackageName.CompanyName.ProjectName.AIO");
});
}
@ -567,12 +567,30 @@ public partial class MicroServiceApplicationsSingleModule
private void ConfigureDbContext()
{
// 配置Ef
Configure<AbpDbContextOptions>(options =>
{
// AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true);//解决PostgreSql设置为utc时间后无法写入local时区的问题
// options.UseNpgsql();
#if MySQL
options.UseMySQL();
options.UseMySQL<ProjectNameDbContext>();
#elif SqlServer
options.UseSqlServer();
options.UseSqlServer<ProjectNameDbContext>(builder =>
{
// see https://learn.microsoft.com/en-us/sql/t-sql/statements/alter-database-transact-sql-compatibility-level?view=sql-server-ver16
// builder.UseCompatibilityLevel(150);
});
#elif Sqlite
options.UseSqlite();
options.UseSqlite<ProjectNameDbContext>();
#elif Oracle || OracleDevart
options.UseOracle();
options.UseOracle<ProjectNameDbContext>();
#elif PostgreSql
AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true);//解决PostgreSql设置为utc时间后无法写入local时区的问题
options.UseNpgsql();
options.UseNpgsql<ProjectNameDbContext>();
#endif
});
}

37
aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/MicroServiceApplicationsSingleModule.cs

@ -102,6 +102,8 @@ using LINGYUN.Platform.EntityFrameworkCore;
using LINGYUN.Platform.HttpApi;
using LINGYUN.Platform.Settings.VueVbenAdmin;
using LINGYUN.Platform.Theme.VueVbenAdmin;
using PackageName.CompanyName.ProjectName.EntityFrameworkCore;
using PackageName.CompanyName.ProjectName.SettingManagement;
using Volo.Abp;
using Volo.Abp.Account.Web;
using Volo.Abp.AspNetCore.Authentication.JwtBearer;
@ -111,7 +113,6 @@ using Volo.Abp.AspNetCore.Serilog;
using Volo.Abp.Autofac;
using Volo.Abp.Caching.StackExchangeRedis;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore.PostgreSql;
using Volo.Abp.EventBus;
using Volo.Abp.FeatureManagement.EntityFrameworkCore;
using Volo.Abp.Imaging;
@ -123,8 +124,20 @@ using Volo.Abp.PermissionManagement.OpenIddict;
using Volo.Abp.SettingManagement;
using Volo.Abp.SettingManagement.EntityFrameworkCore;
using Volo.Abp.Threading;
// using LINGYUN.Abp.Elsa.EntityFrameworkCore.MySql;
#if MySQL
using Volo.Abp.EntityFrameworkCore.MySQL;
#elif SqlServer
using Volo.Abp.EntityFrameworkCore.SqlServer;
using Microsoft.EntityFrameworkCore.Infrastructure;
#elif Sqlite
using Volo.Abp.EntityFrameworkCore.Sqlite;
#elif Oracle
using Volo.Abp.EntityFrameworkCore.Oracle;
#elif OracleDevart
using Volo.Abp.EntityFrameworkCore.Oracle.Devart;
#elif PostgreSql
using Volo.Abp.EntityFrameworkCore.PostgreSql;
#endif
namespace PackageName.CompanyName.ProjectName.AIO.Host;
@ -233,8 +246,19 @@ namespace PackageName.CompanyName.ProjectName.AIO.Host;
typeof(AbpPermissionManagementEntityFrameworkCoreModule),
typeof(AbpPermissionManagementDomainOrganizationUnitsModule), // 组织机构权限管理
// typeof(AbpEntityFrameworkCorePostgreSqlModule),
#if MySQL
typeof(AbpEntityFrameworkCoreMySQLModule),
#elif SqlServer
typeof(AbpEntityFrameworkCoreSqlServerModule),
#elif Sqlite
typeof(AbpEntityFrameworkCoreSqliteModule),
#elif Oracle
typeof(AbpEntityFrameworkCoreOracleModule),
#elif OracleDevart
typeof(AbpEntityFrameworkCoreOracleDevartModule),
#elif PostgreSql
typeof(AbpEntityFrameworkCorePostgreSqlModule),
#endif
typeof(AbpAliyunSmsModule),
typeof(AbpAliyunSettingManagementModule),
@ -323,7 +347,12 @@ namespace PackageName.CompanyName.ProjectName.AIO.Host;
typeof(AbpAspNetCoreHttpOverridesModule),
typeof(AbpAspNetCoreMvcUiBasicThemeModule),
typeof(AbpEventBusModule),
typeof(AbpAutofacModule)
typeof(AbpAutofacModule),
typeof(ProjectNameApplicationModule),
typeof(ProjectNameHttpApiModule),
typeof(ProjectNameEntityFrameworkCoreModule),
typeof(ProjectNameSettingManagementModule)
)]
public partial class MicroServiceApplicationsSingleModule : AbpModule
{

16
aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/PackageName.CompanyName.ProjectName.AIO.Host.csproj

@ -33,8 +33,12 @@
<PackageReference Include="Volo.Abp.AspNetCore.Authentication.JwtBearer" />
<PackageReference Include="Volo.Abp.Autofac" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.MySQL" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.PostgreSql" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.MySql" Condition="'$(MySQL)'=='true'" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.SqlServer" Condition="'$(SqlServer)'=='true'" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.Sqlite" Condition="'$(Sqlite)'=='true'" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.Oracle" Condition="'$(Oracle)'=='true'" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.Oracle.Devart" Condition="'$(OracleDevart)'=='true'" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.PostgreSql" Condition="'$(PostgreSql)'=='true'" />
<PackageReference Include="Volo.Abp.FeatureManagement.Application" />
<PackageReference Include="Volo.Abp.FeatureManagement.EntityFrameworkCore" />
<PackageReference Include="Volo.Abp.FeatureManagement.HttpApi" />
@ -265,12 +269,4 @@
<ProjectReference Include="..\..\src\PackageName.CompanyName.ProjectName.SettingManagement\PackageName.CompanyName.ProjectName.SettingManagement.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="blobs\host\public\" />
</ItemGroup>
<ItemGroup>
<None Remove="blobs\host\public\iShot_2024-12-04_11.51.43.png" />
</ItemGroup>
</Project>

4
aspnet-core/templates/aio/content/host/PackageName.CompanyName.ProjectName.AIO.Host/Properties/launchSettings.json

@ -8,7 +8,7 @@
}
},
"profiles": {
"LY.MicroService.Applications.Single": {
"PackageName.CompanyName.ProjectName.AIO": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": false,
@ -17,7 +17,7 @@
"ASPNETCORE_ENVIRONMENT": "Production"
}
},
"LY.MicroService.Applications.Single.Development": {
"PackageName.CompanyName.ProjectName.AIO.Development": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": false,

Loading…
Cancel
Save