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演练)

不复杂的Autofac注入的更多相关文章

  1. 【半小时大话.net依赖注入】(一)理论基础+实战控制台程序实现AutoFac注入

    系列目录 第一章|理论基础+实战控制台程序实现AutoFac注入 第二章|AutoFac的常见使用套路 第三章|实战Asp.Net Framework Web程序实现AutoFac注入 第四章|实战A ...

  2. windows服务autofac注入quartz任务

    一.nuget下载相关类库引用 install-package Quartz install-package Autofac install-package Autofac.Configuration ...

  3. 理论基础+实战控制台程序实现AutoFac注入

    [半小时大话.net依赖注入](一)理论基础+实战控制台程序实现AutoFac注入   系列目录# 第一章|理论基础+实战控制台程序实现AutoFac注入 第二章|AutoFac的常见使用套路 第三章 ...

  4. ASP.NET Core 使用 AutoFac 注入 DbContext

    DI 1.0 -- 通过 RegisterInstance 注入 一开始,并不是很懂 AutoFac 的用法,又因为要使用特定的构造器和参数来初始化 DbContext,所以我想到的办法就是使用 Re ...

  5. autofac 注入普通服务和WCF服务

    using Autofac;using Autofac.Builder;using Autofac.Core; //实现Autofac扩展 public static AutofacRegisterW ...

  6. .NET Core3.0 Autofac注入

    参考地址:https://docs.autofac.org/en/latest/examples/index.html 1. nuget :Autofac.Extensions.DependencyI ...

  7. .net Core 2.*使用autofac注入

    创建项目 1.创建一个.net core 项目 2.创建一个类库 2.1创建interface文件夹 2.2创建Service文件夹 好了给大家看项目目录 对的.我创建了一个IUserService和 ...

  8. (五)React Ant Design Pro + .Net5 WebApi:后端环境搭建-Autofac注入+ 泛型仓储

    一. 简介 Autofac与.Net Core自带DI的区别,大佬级的文章数不胜数.我只是根据实际应用简单介绍(非常简单的那种) 1.批量注入,自带DI需要自己写循环反射注入,Autofac现成方法, ...

  9. autofac 注入中i遇到的泛型传参问题

    using Autofac; using IService; using System; using System.Collections.Generic; using System.Linq; us ...

随机推荐

  1. HDU 1043 八数码 Eight A*算法

    Eight Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  2. wmware10安装ghost win7问题处理

    随便找到了ghostwin7.iso, 先建立空的虚拟机, 加载iso, 按F2, 设置启动从光盘启动, 启动进去后点直安装Ghost镜像到C盘, 失盘, 直接跳到dos界面了. 忘记先要分区了, 使 ...

  3. vc 判断哪个按键 被按下 消息 按键 状态

    测试Numlock 是否是亮的 环境控制台程序: #include "stdafx.h" #include <stdio.h> #include <conio.h ...

  4. JMeter的定时器

    JMeter的十种定时器 先明确一些概念:1)定时器是在每个sampler(采样器)之前执行的,而不是之后,不管这个定时器的位置放在sampler之后,还是之前.2)定时器是有作用域的:当执行一个sa ...

  5. 慕课网-安卓工程师初养成-2-11 Java常量

    来源:http://www.imooc.com/code/1256 所谓常量,我们可以理解为是一种特殊的变量,它的值被设定后,在程序运行过程中不允许改变. 语法:final 常量名 = 值; 程序中使 ...

  6. STL之vetor 排序

    1 STL提供的Sort 算法 C++之所以得到这么多人的喜欢,是因为它既具有面向对象的概念,又保持了C语言高效的特点.STL 排序算法同样需要保持高效.因此,对于不同的需求,STL提供的不同的函数, ...

  7. oracle误删除恢复

    create table first_fill_20151207 as -- 生成到临时表select * from first_fillas of timestamp to_timestamp('2 ...

  8. 处理SVN的提交代码冲突

    工具: 一台开发的电脑,myeclipse,TortoiseSVN1.8 步骤: 1.不管是提交.更新.编辑冲突第一个操作都应该是和资源库进行同步,项目右键==>Team==>于资源库同步 ...

  9. dll延迟加载

    用于隐式链接选项, 这样设置后在exe调用dll的函数才会加载dll,调用DLL_PROCESS_ATTACH.否则隐式链接直接会在exe启动时加载dll

  10. Leetcode048. Rotate Image

    //鬼晓得上下反转,对角翻转之后竟然正好顺时针九十度,数学事体育老师教的class Solution { public: void rotate(vector<vector<int> ...