This commit is contained in:
2025-05-07 16:15:05 +08:00
parent 85772cb43a
commit ab7ae290f0
13 changed files with 26 additions and 41 deletions

View File

@@ -1,7 +1,6 @@
 namespace Yes.Application.Installs
namespace Yes.Application.Admins.Installs
{ {
public class FileService:IFileService public class FileService : IFileService
{ {
public void CopyFolder(string sources, string dest) public void CopyFolder(string sources, string dest)
{ {

View File

@@ -1,16 +1,15 @@
namespace Yes.Application.Admins.Installs namespace Yes.Application.Installs
{ {
public record InstallCommand( public record InstallCommand(
string DatabaseType, string DatabaseType,
string DatabaseServer, string DatabaseServer,
string DatabaseVersion,
string DatabaseUser, string DatabaseUser,
string DatabasePassword, string DatabasePassword,
string DatabaseName, string DatabaseName,
bool UseDefaultAdmin bool UseDefaultAdmin
) : IRequest<InstallCommandResponse>; ) : IRequest<InstallCommandResponse>;
public record InstallCommandResponse(bool Success,string ErrorMessage=""); public record InstallCommandResponse(bool Success, string ErrorMessage = "");
public class InstallCommandHandler( public class InstallCommandHandler(
IConnectionStringProvider connectionStringProvider, IConnectionStringProvider connectionStringProvider,

View File

@@ -13,7 +13,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Mapster.DependencyInjection" Version="1.0.1" /> <PackageReference Include="Mapster.DependencyInjection" Version="1.0.1" />
<PackageReference Include="Qiniu" Version="8.7.0" /> <PackageReference Include="Qiniu" Version="8.7.0" />
<PackageReference Include="MediatR" Version="12.4.1" /> <PackageReference Include="MediatR" Version="12.5.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@@ -91,10 +91,6 @@
<option value="PostgreSql">PostgreSQL</option> <option value="PostgreSql">PostgreSQL</option>
</select> </select>
</div> </div>
<div class="form-group" x-show="data.databaseType && data.databaseType=='MySql'">
<label>数据库版本:</label>
<input type="text" class="form-control" x-model="data.databaseVersion" placeholder="请填写数据库版本">
</div>
<div class="form-group" > <div class="form-group" >
<label>数据库地址:</label> <label>数据库地址:</label>
<input type="text" class="form-control" x-model="data.databaseServer" placeholder="请输入您的数据库地址"> <input type="text" class="form-control" x-model="data.databaseServer" placeholder="请输入您的数据库地址">
@@ -105,7 +101,7 @@
</div> </div>
<div class="form-group" > <div class="form-group" >
<label>数据库密码:</label> <label>数据库密码:</label>
<input type="password" class="form-control" x-model="data.databasePassword" placeholder="请输入您的数据库密码"> <input type="text" class="form-control" x-model="data.databasePassword" placeholder="请输入您的数据库密码">
</div> </div>
<div class="form-group" > <div class="form-group" >
<label>数据库名称:</label> <label>数据库名称:</label>

View File

@@ -1,5 +1,7 @@
 
using Yes.Application.Installs;
namespace Yes.Blog.Endpoints.Blogs namespace Yes.Blog.Endpoints.Blogs
{ {
public class InstallEndpoint : BlogEndpointScheme, IEndpoint public class InstallEndpoint : BlogEndpointScheme, IEndpoint
@@ -9,7 +11,6 @@ namespace Yes.Blog.Endpoints.Blogs
public record Request( public record Request(
string DatabaseType, string DatabaseType,
string DatabaseServer, string DatabaseServer,
string DatabaseVersion,
string DatabaseUser, string DatabaseUser,
string DatabasePassword, string DatabasePassword,
string DatabaseName, string DatabaseName,

View File

@@ -18,7 +18,6 @@ global using Yes.Application.Admins.Auths;
global using Yes.Application.Admins.Categories; global using Yes.Application.Admins.Categories;
global using Yes.Application.Admins.Comments; global using Yes.Application.Admins.Comments;
global using Yes.Application.Admins.Configurations; global using Yes.Application.Admins.Configurations;
global using Yes.Application.Admins.Installs;
global using Yes.Application.Admins.Pages; global using Yes.Application.Admins.Pages;
global using Yes.Application.Admins.Statistics; global using Yes.Application.Admins.Statistics;
global using Yes.Application.Admins.Storages; global using Yes.Application.Admins.Storages;

View File

@@ -40,11 +40,11 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="FluentValidation" Version="11.11.0" /> <PackageReference Include="FluentValidation" Version="12.0.0" />
<PackageReference Include="FluentValidation.DependencyInjectionExtensions" Version="11.11.0" /> <PackageReference Include="FluentValidation.DependencyInjectionExtensions" Version="12.0.0" />
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="9.0.4" /> <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="9.0.4" />
<PackageReference Include="MinimalApis.LiquidViews" Version="2.16.0" /> <PackageReference Include="MinimalApis.LiquidViews" Version="2.24.0" />
<PackageReference Include="Scalar.AspNetCore" Version="2.2.2" /> <PackageReference Include="Scalar.AspNetCore" Version="2.2.7" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@@ -8,7 +8,6 @@
public string DatabaseType { get; set; } public string DatabaseType { get; set; }
public string DatabaseVersion { get; set; }
public string Name { get; set; } = "我的博客"; public string Name { get; set; } = "我的博客";

View File

@@ -8,7 +8,6 @@ namespace Yes.Domain.Core.Data
DatabaseTypeEnum GetDatabaseType(); DatabaseTypeEnum GetDatabaseType();
string GetDatabaseVersion();
string GetConnectionStringWithoutDatabase(DatabaseTypeEnum databaseType, string connectionString); string GetConnectionStringWithoutDatabase(DatabaseTypeEnum databaseType, string connectionString);

View File

@@ -11,8 +11,8 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Markdig" Version="0.39.1" /> <PackageReference Include="Markdig" Version="0.41.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.0" /> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.4" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@@ -29,11 +29,6 @@
return databaseType; return databaseType;
} }
public string GetDatabaseVersion()
{
return _settings.DatabaseVersion;
}
public string GetConnectionStringWithoutDatabase(DatabaseTypeEnum databaseType, string connectionString) public string GetConnectionStringWithoutDatabase(DatabaseTypeEnum databaseType, string connectionString)
{ {
var builder = ConnectionStringBuilderFactory.CreateStringBuilder(databaseType, connectionString); var builder = ConnectionStringBuilderFactory.CreateStringBuilder(databaseType, connectionString);

View File

@@ -5,14 +5,12 @@
private readonly string _connectionString; private readonly string _connectionString;
private readonly DatabaseTypeEnum _databaseType; private readonly DatabaseTypeEnum _databaseType;
private readonly string _databaseVersion;
public BlogDbContext(IConnectionStringProvider connectionStringProvider) public BlogDbContext(IConnectionStringProvider connectionStringProvider)
{ {
_connectionString = connectionStringProvider.GetConnectionString(); _connectionString = connectionStringProvider.GetConnectionString();
_databaseType = connectionStringProvider.GetDatabaseType(); _databaseType = connectionStringProvider.GetDatabaseType();
_databaseVersion = connectionStringProvider.GetDatabaseVersion();
} }
@@ -22,7 +20,7 @@
_ = _databaseType switch _ = _databaseType switch
{ {
DatabaseTypeEnum.SqlServer => builder.UseSqlServer(_connectionString), DatabaseTypeEnum.SqlServer => builder.UseSqlServer(_connectionString),
DatabaseTypeEnum.MySql => builder.UseMySql(_connectionString, string.IsNullOrEmpty(_databaseVersion) ? MySqlServerVersion.AutoDetect(_connectionString) : new MySqlServerVersion(_databaseVersion)), DatabaseTypeEnum.MySql => builder.UseMySql(_connectionString, MySqlServerVersion.AutoDetect(_connectionString)),
DatabaseTypeEnum.PostgreSQL => builder.UseNpgsql(_connectionString), DatabaseTypeEnum.PostgreSQL => builder.UseNpgsql(_connectionString),
_ => throw new DatabaseNotSupportedException() _ => throw new DatabaseNotSupportedException()

View File

@@ -7,15 +7,15 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Dapper" Version="2.1.35" /> <PackageReference Include="Dapper" Version="2.1.66" />
<PackageReference Include="FluentMigrator" Version="6.2.0" /> <PackageReference Include="FluentMigrator" Version="7.1.0" />
<PackageReference Include="FluentMigrator.Runner" Version="6.2.0" /> <PackageReference Include="FluentMigrator.Runner" Version="7.1.0" />
<PackageReference Include="Fluid.ViewEngine" Version="2.16.0" /> <PackageReference Include="Fluid.ViewEngine" Version="2.24.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="9.0.0" /> <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="9.0.4" />
<PackageReference Include="Microsoft.OpenApi" Version="1.6.17" /> <PackageReference Include="Microsoft.OpenApi" Version="1.6.24" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.2" /> <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.4" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="9.0.0-preview.2.efcore.9.0.0" /> <PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="9.0.0-preview.2.efcore.9.0.0" />
<PackageReference Include="MySql.Data" Version="9.1.0" /> <PackageReference Include="MySql.Data" Version="9.3.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>