【二】、.net core 3.1 windows服务读取appsetting的步骤

摘要:
1.在appsetting中,添加节点{“Logging”:{“LogLevel”:}“Default”:“Information”,“Microsoft”:“Warning”,“Microsoft.Hosting.Lifetime”:“Information”}},“MQ”:“IP”:“127.0.0.1”,“Port”:“61616”,“UserName”:“admin”,“Password”

1、在appsetting里添加节点

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "MQ": {
    "IP": "127.0.0.1",
    "Port": "61616",
    "UserName": "admin",
    "Password": "admin"
  }
}

2、新建一个与之对应的类如下:

    public class MQConfig
    {
        public string IP { get; set; }
        public string Port { get; set; }
        public string UserName { get; set; }
        public string Password { get; set; }
    }

3、修改Program里的CreateHostBuilder

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
            .UseWindowsService()
            .ConfigureServices((hostContext, services) =>
                {
                    services.AddHostedService<Worker>();
                    services.Configure<MQConfig>(hostContext.Configuration.GetSection(key: "MQ"));
                })
            .UseSerilog();

4、在worker里使用

    public class Worker : BackgroundService
    {
        private readonly ILogger<Worker> _logger;
        private readonly MQConfig _mqConfig;

        public Worker(ILogger<Worker> logger, IOptions<MQConfig> settings)
        {
            _logger = logger;
            _mqConfig = settings.Value;
        }

        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            while (!stoppingToken.IsCancellationRequested)
            {
                _logger.LogInformation("Worker running at: {time}" + "IP:{1},Port:{2}", DateTimeOffset.Now, _mqConfig.IP, _mqConfig.Port);
                await Task.Delay(1000, stoppingToken);
            }
        }
    }

4、结果如下:

【二】、.net core 3.1 windows服务读取appsetting的步骤第1张

  示例代码地址:https://download.csdn.net/download/jiancaixing/20629212

免责声明:文章转载自《【二】、.net core 3.1 windows服务读取appsetting的步骤》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇USB LPT 端口映射chapter11:认识与学习bash之(1)认识shell与shell的变量功能下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android获取系统时间方法的总结

Android获取系统时间方法的方法有很多种,常用的有Calendar、Date、currentTimeMills等方法。 (1)Calendar Calendar获取系统时间首先要用Calendar.getInstance()函数获取一个实例,再为该实例设定时区(中国的时区为GMT+8:00),最后使用Calendar.get()函数获取时间的具体信息,...

oracle 内置函数

oracle内置函数分为单行函数和聚合函数两大类 1、to_date 将字符转换为日期 select to_date('2008-08-08','yyyy-mm-dd') from dual; --2008/8/8 2.add_months 增加月份 select add_months(sysdate,2) from dual; --当前时间向后推2个月,...

(一)JIRA API 对接

系统要跟JIRA对接,将本系统数据发送给jira,jira数据返回给本系统。 开始一头雾水怎么让数据传过去已什么形式存在,是存数据库呢还是怎么显示呢。研究半天发现其实只要将原数据作为json数据提供给jira接口,jira接口进行创建issue。 但前提在于要先创建项目。 jira的API 有很多有创建项目的,创建问题等。在线找到了6.1版本的API,根据...

【失败的尝试】C++中使用string进行switch判断

贴出错误代码: #include <iostream>#include <string>using namespace std;void main(){    string str;    cin>>str;     switch(str)    {    case "ab":        cout<<"o...

golang json解析

前言 Go 语言自带的 encode/json 包提供了对 JSON 数据格式的编码和解码能力。 解析 JSON 的关键,其实在于如何声明存放解析后数据的变量的类型。 此外使用 json 编码还会有几个需要注意的地方,谨防踩坑。 解析简单JSON 先观察下这段 JSON 数据的组成,name,created 是字符串。id 是整型,fruit 是一个字符串...

使用WMI来连接远端计算机

1. wmi连接前提 利用wmi来连接远端计算机首先要具有远端计算机管理员的用户名和密码。如果计算机在域中的话,要有域管理员用户名和密码,或者是把域帐户加入本机管理员组中也可以。 2. 相关类的用法--- ConnectionOptions和ManagementScope ConnectionOptions用于设置连接选项,比如设置所连接机器的域,用户名,...