中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

LindDotNetCore~入門基(ji)礎

回到目錄

LindDotNetCore基礎介紹

  1. 運行環境
  2. 配置文件
  3. 服務的注冊
  4. 配置文件的注冊
  5. 服務的使用
  6. 配置文件的使用

運行環境

vs2017+.netcore2.0,vs需要升(sheng)級到最(zui)新(xin)包

配置文件

appsetting.json,我們提出(chu)了開發環(huan)境(jing),測試環(huan)境(jing)和生(sheng)產環(huan)境(jing),分別對應(ying)不同的(de)文(wen)件(jian)

  • 開發:Development,appsetting.Development.json
  • 測試:Staging,appsetting.Development.json
  • 生產:Producting,appsetting.Development.json

服務的注冊

在.net core里(li),包括在LindDotNetCore里(li),服(fu)務的注冊是在startup里(li)進(jin)行,你可以方便的控制每個(ge)組件的生命周(zhou)期。

  • 單例,整個進程使用同一個實例,像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
	}
}

配置文件的注冊

大(da)叔(shu)封裝(zhuang)了配置(zhi)文件(jian)的注(zhu)入和(he)獲取方(fang)法(fa),注(zhu)入需要依賴環境變量(liang),它在startup初(chu)始時被生產。

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

服務的使用

我們的服務在startup里一次性被注入,然后在每個控制器的構造方法里被使用,注意:我們的服務支持依賴型注入
這點對我們(men)重要,比如一個服務(wu)的生產(chan)依(yi)賴于另(ling)一個服務(wu),那么,這種關系(xi)由(you)core DI幫我們(men)實現(xian)!

[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>());

待續...
回到目錄

posted @ 2018-01-08 13:50  張占嶺  閱讀(1148)  評論(0)    收藏  舉報