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. css margin-top设置html元素之间的距离

    css margin-top属性设置的是一个元素的顶端与另一个元素之间的距离.这个距离称为上外边距,本文章向大家介绍css margin-top属性的用法和实例,需要的朋友可以参考一下. css ma ...

  2. POJ3264RMQ

    http://poj.org/problem?id=3264 #include<stdio.h> #include<string.h> #include<algorith ...

  3. Laxcus大数据管理系统2.0(14)- 后记

    后记 Laxcus最早源于一个失败的搜索引擎项目,项目最后虽然终止了,但是项目中的部分技术,包括FIXP协议.Diffuse/Converge算法.以及很多新的数据处理理念却得以保留下来,这些成为后来 ...

  4. Photoshop Cs5 64位系统破解版下载(内含破解方法)

    Photoshop Cs5 64位系统是电影.视频和多媒体领域的专业人士, 使用 3D 和动画的图形和 Web 设计人员, 以及工程和科学领域的专业人士的理想选择,下面提供Photoshop Cs5  ...

  5. 如何在使用 RemoteWebDriver 打开网页的同时获取 Http 状态码

    最近一直在用Selenium这个开源项目写一些web 自动化的小玩意.本来一直运行的挺好,直到有一天突然发现资源抓取失败了,翻看日志才发现,原来本该正常打开的页面返回了504错误所以自然失败了.如何避 ...

  6. Eclipse 启动Tomcat后web项目的classes的子文件夹中没有calss文件

    Eclipse 启动Tomcat后web项目的classes的子文件夹中没有calss文件. 经网上查得以下方法可解决 把properties属性里的java compiler-->buildi ...

  7. 创投女王徐新:如何迅速做到细分市场第一(FW)

    http://mp.weixin.qq.com/s?__biz=MjM5NzUxNTQ2Mw==&mid=203368116&idx=2&sn=e586a2f28dfb2b50 ...

  8. 使用Apache CXF开发WebServices服务端、客户端

    在前一篇的博客中,我使用Xfire1.x来开发了WebServies的服务端. 但是如果你访问Apache的官网,可以看到xfire已经被合并了. 最新的框架叫做CXF. Apache CXF = C ...

  9. openStack reboot调试

  10. 银行ATM机工作流程模拟编程(代码)

    #include<stdio.h>#include<stdlib.h>#include <conio.h>#include <string.h> voi ...