zoukankan      html  css  js  c++  java
  • Asp.net Core3.1使用Autofac

    安装Autofac

    Program文件中加入UseServiceProviderFactory

     public class Program
        {
            public static void Main(string[] args)
            {
                CreateHostBuilder(args).Build().Run();
            }
    
            public static IHostBuilder CreateHostBuilder(string[] args) =>
                Host.CreateDefaultBuilder(args)
                    .ConfigureWebHostDefaults(webBuilder =>
                    {
                        webBuilder.UseStartup<Startup>();
                    })
                .UseServiceProviderFactory(new AutofacServiceProviderFactory());
        }

    Startup 文件 ConfigureServices方法添加:

            services.Replace(
       ServiceDescriptor
           .Transient<IControllerActivator, ServiceBasedControllerActivator>()
    );

    添加ConfigureContainer方法

     public void ConfigureContainer(ContainerBuilder builder)
            {
    
                var assembly1= Assembly.GetAssembly(typeof(BaseService));
                var assembly2 = Assembly.GetExecutingAssembly();
                builder.RegisterAssemblyTypes(assembly1)
                    .PublicOnly()
                    .Where(r => r.Name.EndsWith("Service"))
                    .AsImplementedInterfaces()
                    .PropertiesAutowired()
                    .InstancePerLifetimeScope();
                builder.RegisterType<HttpContextAccessor>().As<IHttpContextAccessor>();
                var controllersTypesInAssembly = typeof(Startup).Assembly.GetExportedTypes()
            .Where(type => typeof(Microsoft.AspNetCore.Mvc.ControllerBase).IsAssignableFrom(type)).ToArray();
                builder.RegisterTypes(controllersTypesInAssembly).PropertiesAutowired();
            }
  • 相关阅读:
    特征选择常用算法综述
    C++中的extern "C"
    OpenGL管道概括
    使用CGAL查找输入三角网格模型独立模型个数
    图形学领域的关键算法及源码链接
    STL学习笔记
    CGAL+QT4.84+Boost1.53 错误[Parse error at "BOOST_JOIN"]
    Template函数
    在windows环境下安装配置CGAL
    关于C++中的堆、栈
  • 原文地址:https://www.cnblogs.com/tangchun/p/15359530.html
Copyright © 2011-2022 走看看