d_sms_service/APT.MicroApi/APT.PF.WebApi/Controllers/Api/DbMigrationController.cs
2024-10-28 13:45:58 +08:00

38 lines
1.1 KiB
C#

using APT.BaseData.Domain.Entities;
using APT.Infrastructure.Api;
using APT.Infrastructure.Core;
using APT.Migrations;
using APT.Utility;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
namespace APT.PF.WebApiControllers.Api.PF
{
[Route("api/PF/DbMigration")]
public class DbMigrationController : AuthorizeTreeApiController<T_PF_MENU>
{
/// <summary>
/// 查询
/// </summary>
/// <param name="pageFilter"></param>
/// <returns></returns>
[HttpPost, Route("Migrate")]
public JsonActionResult<bool> Migrate([FromBody] KeywordFilter filter)
{
return SafeExecute<bool>(() =>
{
var tenantInfo = APT.Infrastructure.Api.ServiceLocator.Instance.GetService<TenantInfo>();
if (tenantInfo != null && !string.IsNullOrEmpty(tenantInfo.Conn))
{
using (var context = new MigrationContext(tenantInfo.Conn))
{
context.Database.Migrate();
}
}
return true;
});
}
}
}