[Asp.Net Core]Autofac单抽象多实例属性注入

Posted 厦门德仔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Asp.Net Core]Autofac单抽象多实例属性注入相关的知识,希望对你有一定的参考价值。

1.道理和上面一样,可以把Autofac 上下文当做属性来注入

2.在使用的时候,通过Autofac上下文+不同注册的标识,获取到不同的具体实例

       [CustomPropertyAttribute]
        private ITestServiceA iTestServiceAA  get; set; 


        [CustomPropertyAttribute]
        private IComponentContext _ComponentContextProp  get; set; 

        /// <summary>
        /// Autofac 容器上下文
        /// </summary>
        private readonly IComponentContext _ComponentContext = null;

        public SixThController(IComponentContext componentContext)
        
            _ComponentContext = componentContext;
        

        public IActionResult Index()
         
            ITestServiceA testServiceA = _ComponentContext.ResolveNamed<ITestServiceA>("TestServiceA");
            ITestServiceA testServiceUpdate = _ComponentContext.ResolveNamed<ITestServiceA>("TestServiceUpdate");

            ITestServiceA testServiceA1 = _ComponentContextProp.ResolveNamed<ITestServiceA>("TestServiceA");
            ITestServiceA testServiceUpdate1 = _ComponentContextProp.ResolveNamed<ITestServiceA>("TestServiceUpdate");
             
            testServiceA.Show();
            testServiceUpdate.Show();
            return View();
        

以上是关于[Asp.Net Core]Autofac单抽象多实例属性注入的主要内容,如果未能解决你的问题,请参考以下文章

[Asp.Net Core]Autofac单抽象多实现构造函数注入

[Asp.Net Core]Autofac单抽象多实现构造函数注入

[Asp.Net Core]Autofac抽象多实现的问题

[Asp.Net Core]Autofac抽象多实现的问题

[Asp.Net Core]Autofac抽象支持AOP

[Asp.Net Core]Autofac抽象支持AOP