iotgateway/Plugins/Plugin/IoTBackgroundService.cs

52 lines
1.6 KiB
C#
Raw Normal View History

2021-12-12 06:55:48 +00:00
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using WalkingTec.Mvvm.Core;
namespace Plugin
{
public class IoTBackgroundService : BackgroundService
{
2022-08-10 08:55:44 +00:00
public static DBTypeEnum DbType;
2021-12-12 06:55:48 +00:00
public static string connnectSetting;
2022-04-18 08:35:33 +00:00
public static Guid? VariableSelectDeviceId, ConfigSelectDeviceId;
2022-08-10 08:55:44 +00:00
public IoTBackgroundService(IConfiguration configRoot)
2021-12-12 06:55:48 +00:00
{
var connnectSettings = new List<ConnnectSettingsModel>();
2022-08-10 08:55:44 +00:00
configRoot.Bind("Connections", connnectSettings);
2021-12-12 06:55:48 +00:00
connnectSetting = connnectSettings[0].Value;
2022-08-10 08:55:44 +00:00
switch (connnectSettings[0].DbType?.Trim().ToLower())
2021-12-12 06:55:48 +00:00
{
case "oracle":
2022-08-10 08:55:44 +00:00
DbType = DBTypeEnum.Oracle;
2021-12-12 06:55:48 +00:00
break;
case "mysql":
2022-08-10 08:55:44 +00:00
DbType = DBTypeEnum.MySql;
2021-12-12 06:55:48 +00:00
break;
case "pgsql":
2022-08-10 08:55:44 +00:00
DbType = DBTypeEnum.PgSql;
2021-12-12 06:55:48 +00:00
break;
case "sqlite":
2022-08-10 08:55:44 +00:00
DbType = DBTypeEnum.SQLite;
2021-12-12 06:55:48 +00:00
break;
case "memory":
2022-08-10 08:55:44 +00:00
DbType = DBTypeEnum.Memory;
2021-12-12 06:55:48 +00:00
break;
}
}
protected override Task ExecuteAsync(CancellationToken stoppingToken)
{
return Task.CompletedTask;
}
public override Task StartAsync(CancellationToken cancellationToken)
{
return Task.CompletedTask;
}
public override Task StopAsync(CancellationToken cancellationToken)
{
return Task.CompletedTask;
}
}
}