系统版本升级示例如下:
- 在后端
AppServer.cs
的UseApplication
中添加升级方法
static class AppServer
{
internal static void UseApplication(this WebApplication app)
{
app.UseKnown();
_ = AppMigrate.UpdateVersionAsync(); // 更新版本
}
}
- 在后端项目中添加
AppMigrate.cs
类文件,示例如下:
class AppMigrate
{
private const string VersionKey = "SysVersion"; // 版本配置键
private const string VersionNo = "20251006"; // 版本号,下次升级版本,需要更改版本号
public static async Task UpdateVersionAsync()
{
var database = Database.Create();
var versionNo = await database.GetConfigAsync(VersionKey);
if (versionNo == VersionNo) // 判断是否已更新
return;
// 更新20251006版本内容
await database.QueryActionAsync(async db =>
{
var isAddField = await db.AddTableFieldAsync<XXTable>(c => c.XXField); // 添加表字段
if (isAddField)
{
// 更新表数据
await db.ExecuteAsync($"update XXTable set XXField='XX' where Status<>'TT'");
}
await db.CreateTableAsync<TableXX>(); // 添加新表TableXX
await db.SaveConfigAsync(VersionKey, VersionNo); // 保存新版本
});
}
}