亚洲必赢手机入口入门基础

by admin on 2019年4月11日

回到目录

归来目录

LindDotNetCore基础介绍

  1. 运营环境
  2. 安插文件
  3. 劳动的注册
  4. 铺排文件的挂号
  5. 服务的施用
  6. 安插文件的行使

    #### 运营条件

    vs20壹七+.netcore2.0,vs须求升级到新型包

    #### 配置文件

    appsetting.json,我们建议了付出环境,测试环境和生产条件,分别对应差异的文件

  • 开发:Development,appsetting.Development.json
  • 测试:Staging,appsetting.Development.json
  • 生产:Producting,appsetting.Development.json

    #### 服务的登记

    在.net
    core里,包涵在LindDotNetCore里,服务的登记是在startup里举办,你可以方便的控制种种组件的生命周期。

  • 单例,整个经过使用同一个实例,像redis,mongodb,日志

  • 线程单例,在三个线程里它是绝无仅有的实例,在api环境下,你的三个http请求下来,三个指标只生育叁回,像http请求链
  • 时而,每一次注入时,都会生产贰个新的实业。像仓库储存对象,数据上下文

    public void ConfigureServices(IServiceCollection services)
    {
    
    //Lind.DotNetCore封装的一些模块
    services.AddLog4Logger(o =>
    {
        o.Log4ConfigFileName = "log4.config";
        o.ProjectName = "test";
    });
    services.UseDapper(o =>
    {
        o.ConnString = $"Data Source={Directory.GetCurrentDirectory()}/intergratetest.db";
        o.DbType = Lind.DotNet
    }
    }
    

    #### 配置文件的挂号

    大叔封装了安插文件的注入和获得方式,注入必要借助环境变量,它在startup开首时被生产。

    public Startup(IConfiguration configuration, IHostingEnvironment env)
    {
    ConfigFileHelper.Set(env: env);
    Configuration = configuration;
    }
    

    #### 服务的施用

    我们的劳务在startup里一遍性被注入,然后在每一个控制器的构造方法里被使用,注意:作者们的劳务帮助依赖型注入
    这一点对大家最主要,比如多个劳动的生育依赖于另三个服务,那么,那种关系由core
    DI帮大家落到实处!

    [Route("api/[controller]")]
    public class ValuesController : Controller
    {
     ILogger _logger;
     public ValuesController(ILogger logger)
     {
    _logger = logger;
     }
    

    #### 配置文件的利用

    大家能够直接利用Utils命名空间下的ConfigFileHelper对象,它里面有Get方法,用来取得具体的布置节点
    留意,大家的布置节点援助强类型和字符串二种,强类型务求你提供泛型,字符串只要输入名称就足以
    归来具体的值了。

    var options = new EFConfig();
    //装饰
    configure?.Invoke(options);
    //优先级控制
    ObjectMapper.MapperTo(options, ConfigFileHelper.Get<EFConfig>());
    

    待续…
    回去目录

LindDotNetCore基础介绍

  1. 运营条件
  2. 配备文件
  3. 劳动的登记
  4. 布局文件的挂号
  5. 劳动的应用
  6. 布署文件的选拔

    #### 运维条件

    vs20壹七+.netcore二.0,vs需求升级到最新包

    #### 配置文件

    appsetting.json,我们提议了支出条件,测试环境和生育环境,分别对应不相同的文书

  • 开发:Development,appsetting.Development.json
  • 测试:Staging,appsetting.Development.json
  • 生产:Producting,appsetting.Development.json

    #### 服务的挂号

    在.net
    core里,包涵在LindDotNetCore里,服务的挂号是在startup里举行,你能够一本万利的支配每个组件的生命周期。

  • 单例,整个进度使用同贰个实例,像redis,mongodb,日志

  • 线程单例,在多个线程里它是唯1的实例,在api环境下,你的贰个http请求下来,贰个对象只生育1遍,像http请求链
  • 转眼,每便注入时,都会生产二个新的实体。像仓储对象,数据上下文

    public void ConfigureServices(IServiceCollection services)
    {
    
    //Lind.DotNetCore封装的一些模块
    services.AddLog4Logger(o =>
    {
        o.Log4ConfigFileName = "log4.config";
        o.ProjectName = "test";
    });
    services.UseDapper(o =>
    {
        o.ConnString = $"Data Source={Directory.GetCurrentDirectory()}/intergratetest.db";
        o.DbType = Lind.DotNet
    }
    }
    

    #### 配置文件的注册

    老伯封装了配备文件的流入和收获方式,注入须求借助环境变量,它在startup初阶时被生产。

    public Startup(IConfiguration configuration, IHostingEnvironment env)
    {
    ConfigFileHelper.Set(env: env);
    Configuration = configuration;
    }
    

    #### 服务的利用

    咱们的服务在startup里一回性被注入,然后在每一种控制器的构造方法里被选取,注意:咱俩的劳务辅助依赖型注入
    这一点对我们任重(Ren Zhong)而道远,比如2个劳务的生产正视于另二个劳动,那么,这种涉及由core
    DI帮大家兑现!

    [Route("api/[controller]")]
    public class ValuesController : Controller
    {
     ILogger _logger;
     public ValuesController(ILogger logger)
     {
    _logger = logger;
     }
    

    #### 配置文件的选择

    大家得以直接使用Utils命名空间下的ConfigFileHelper对象,它里面有Get方法,用来取得具体的布局节点
    专注,大家的配备节点扶助强类型和字符串二种,强类型渴求您提供泛型,字符串只要输入名称就能够
    回去具体的值了。

    var options = new EFConfig();
    //装饰
    configure?.Invoke(options);
    //优先级控制
    ObjectMapper.MapperTo(options, ConfigFileHelper.Get<EFConfig>());
    

    待续…
    再次回到目录

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图