zoukankan      html  css  js  c++  java
  • 不复杂的Autofac注入

    private static void SetAutofacWebAPI()
            {
                var builder = new ContainerBuilder();
                
                #region 配置注册方法
                string dataType = ConfigurationManager.AppSettings["dataBaseType"].ToString().ToLower();
                //var data = Assembly.Load("Model");//加载特定程序集
                var data2 = Assembly.Load("MvcAdmin.Service");//加载特定程序集
                switch (dataType)
                {
                    case "mssql":
                        builder.RegisterAssemblyTypes(data2)
                            .Where(a => a.FullName.Contains("MvcAdmin.Service.MSSQLServer")).AsImplementedInterfaces();
                        break;
                    case "mysql":
                        builder.RegisterAssemblyTypes(data2)
                            .Where(a => a.FullName.Contains("MvcAdmin.Service.MySQLServer")).AsImplementedInterfaces();
                        break;
                    default:
                        //builder.RegisterAssemblyTypes(data)
                        //    .Where(a => a.FullName.Contains("Model.MYSQL")).AsImplementedInterfaces();
                        builder.RegisterAssemblyTypes(data2)
                            .Where(a => a.FullName.Contains("MvcAdmin.Service.MySQLServer")).AsImplementedInterfaces();
                        break;
                }
                #endregion
    
                builder.RegisterControllers(Assembly.GetExecutingAssembly());
                var container = builder.Build();
                DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
               
            }

    看得出,去就是在web.config中加了一个数据库的选择,不加的话也会有默认的。之前有人说我用web.config配置太复杂了,所有出这篇。

    复杂的这篇http://www.cnblogs.com/RainbowInTheSky/p/4531786.html

    上面的代码我在之前开源的小后台中有使用,地址:http://code.taobao.org/p/MvcAdmin/src/可以去看看里面的启动项代码

    另外在附上Autofac入门:

    http://www.cnblogs.com/liping13599168/archive/2011/07/16/2108209.html(控制台演练)

    http://www.cnblogs.com/jiagoushi/p/4084145.html(属性注入)

    http://www.cnblogs.com/n-pei/archive/2013/01/24/2875674.html(mvc演练)

  • 相关阅读:
    一步一步实现一个简单的OS(简单的让boot载入setup)
    hdu 1203 I NEED A OFFER!(01背包)
    面向服务与微服务架构
    ThreadLocal,LinkedBlockingQueue,线程池 获取数据库连接2改进
    deeplearning.net 0.1 document
    怎样有效的降低反复的代码
    redmine 自己定义字段mysql表结构
    c语言中使用宏,需要注意的的几点
    gcc自有的define语法,解决变量多次自加的问题
    ubuntu16.04 安装docker
  • 原文地址:https://www.cnblogs.com/RainbowInTheSky/p/4533836.html
Copyright © 2011-2022 走看看