Skip to content

autofac/Autofac

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ae6c284 · May 22, 2020
May 7, 2020
Jan 28, 2020
May 22, 2020
May 22, 2020
May 20, 2020
Feb 4, 2015
Oct 6, 2019
Jun 2, 2014
Dec 18, 2019
Mar 20, 2019
Dec 20, 2015
Jul 6, 2019
Jul 6, 2019
Jan 30, 2020
Apr 9, 2019
Mar 24, 2017
Jul 18, 2019
May 11, 2020
May 23, 2018
Apr 1, 2020

Repository files navigation

Autofac is an IoC container for Microsoft .NET. It manages the dependencies between classes so that applications stay easy to change as they grow in size and complexity. This is achieved by treating regular .NET classes as components.

Build status MyGet publish status Autofac on Stack Overflow Join the chat at https://gitter.im/autofac/autofac NuGet

Get Packages

You can get Autofac by grabbing the latest NuGet packages. If you're feeling adventurous, continuous integration builds are on MyGet.

Release notes are available on the wiki.

Get Help

Need help with Autofac? We have a documentation site as well as API documentation. We're ready to answer your questions on Stack Overflow or check out the discussion forum.

Get Started

Our Getting Started tutorial walks you through integrating Autofac with a simple application and gives you some starting points for learning more.

Super-duper quick start:

Register components with a ContainerBuilder and then build the component container.

var builder = new ContainerBuilder();

builder.Register(c => new TaskController(c.Resolve<ITaskRepository>()));
builder.RegisterType<TaskController>();
builder.RegisterInstance(new TaskController());
builder.RegisterAssemblyTypes(controllerAssembly);

var container = builder.Build();

Resolve services from a lifetime scope - either the container or a nested scope:

var taskController = container.Resolve<TaskController>();

There is a growing number of application integration libraries that make using Autofac with your application a snap. Support for several popular frameworks is also available through the "Extras" packages.

Intrigued? Check out our Getting Started walkthrough!

Project

Autofac is licensed under the MIT license, so you can comfortably use it in commercial applications (we still love contributions though).

File issues in the repo with the associated feature/code.

Contributing / Pull Requests

Refer to the Contributor Guide for setting up and building Autofac source.