美文网首页
dotnet6读取Configuration

dotnet6读取Configuration

作者: ljt001 | 来源:发表于2022-11-08 19:48 被阅读0次

    appsettings.json

    {
      "ConnectionStrings": {
        "mongodb": "mongodb://user:password@demo.mongo:28001,demo.mongo:28002/?slaveOk=true",
        "mongodb-ext": "mongodb://user:password@demo.mongo:28001,demo.mongo:28002/?slaveOk=true"
      },
      "Student": {
        "ID": "1",
        "Name": "tom"
      }
    }
    
    var builder = WebApplication.CreateBuilder(args);
    
    // connection string
    var connectionString = builder.Configuration.GetConnectionString("mongodb");
    
    // config
    var id = builder.Configuration["Student:ID"];
    var student = builder.Configuration.GetSection("Student").Get<Student>();
    
    // mongo配置注册
    builder.Services.Configure<MongoSessionOption>(options =>
    {
        options.ConnectionString = builder.Configuration.GetConnectionString("mongodb");
        options.DbName = "demo";
    });
    
    // mongo配置注册
    builder.Services.Configure<MongoSessionOption>(options =>
    {
        options.ConnectionString = builder.Configuration.GetConnectionString("mongodb-ext");
        options.DbName = "demoExt";
    });
    
    
    // 配置
    public class Student
    {
      public string ID { get; set; }
      public string Name { get; set; }
    }
    
    // mongo配置
    public class MongoSessionOption
    {
      public string ConnectionString { get; set; }
      public string DbName { get; set; }
    }
    
    // mongo配置
    public class MongoSessionOptionExt
    {
      public string ConnectionString { get; set; }
      public string DbName { get; set; }
    }
    
    public class DemoMongoRepo
    {
      private readonly MongoSessionOption mongoSessionOption;
      // 构造函数注入mongo配置
      public DemoMongoRepo(IOptions<MongoSessionOption> options)
      {
        mongoSessionOption = options.Value;
      }
    }
    

    相关文章

      网友评论

          本文标题:dotnet6读取Configuration

          本文链接:https://www.haomeiwen.com/subject/wvintdtx.html