1. 程式人生 > 其它 >vue/cli中css.sourceMap-open-inline-host-port-https-openPage-compress -devServer.proxy的簡單介紹

vue/cli中css.sourceMap-open-inline-host-port-https-openPage-compress -devServer.proxy的簡單介紹

class Program
    {
        static void Main(string[] args)
        {
            //1 nuget 包Microsoft.Extensions.DependencyInjection
            //2 建立 ServiceColl ection 
            //3 BuildServiceProvider 
            ServiceCollection services = new ServiceCollection();
            // services.AddSingleton
<IService, ConcreteService>();
        services.AddSingleton(typeof(IService), new ConcreteService());//這種可以實現帶引數的建構函式
using (var serviceBuild = services.BuildServiceProvider()) { var conCreteService = serviceBuild.GetService<IService>();//找不到 null
          var conCreteService = serviceBuild.GetRequiredService<IService>();// 拋異常 conCreteService.Show(); } Console.WriteLine(
"Hello World!"); } } public interface IService { void Show(); } public class ConcreteService : IService { public void Show() { Console.WriteLine( "你哈"); } }
using Microsoft.Extensions.DependencyInjection;

在擴充套件包內的

----------------------------------------------------------------------------------------------------------------------

生命週期,

transient每次都不一樣

Singleton單列,以最後面的為準,最後面誰修改了屬性,前面的例項也會是這個屬性值。

scoped:範圍,一個using是一個範圍。

如何選擇:

如果類無狀態,沒有屬性,建議是singleTon;

如果類有狀態,且有scope控制,建議是scope.因為通常這個scope控制下的程式碼都是執行在一個執行緒內的沒有發生修改的問題。

在使用transient的要謹慎。

 

----------------------------------------------------------------------------------------------------------------------