Announcement
Caraway has moved to Google Code under the name Autofac . A public Subversion repository, wiki, newsgroup and issue tracker are available. If you'd like to get involved, come and post a message !
Autofac
Autofac is a nifty dependency injection/IoC container for .NET, developed with highly object-oriented designs and the functional features of C# 3 in mind.
News
What Sets Caraway Apart?
September 11, 2007 14:07
This seems like a good time to summarise why Caraway is a significant addition to the containers already available for .NET:
Multiple Services per Component
Components provided through Caraway can expose multiple services. This requirement is fundamental to many OO designs, but the complexity it brings to lifecycle management means that many other containers ignore it.
Accumulating Collections
In many cases, more than one component needs to provide the same service. Other containers support arrays, but in Caraway multi-valued registrations are first class concepts that can be used as regular dependencies shared between other components.
Caraway also allows these collections to be incrementally appended to in the registration process - a must if the application's default set of programmatically-registered plug-ins is to be augmented with those registered through a configuration file.
Lambda Expression Activators
Caraway has been designed to take advantage of new language features in C# 3.0 that make it simple to register and create component instances without using reflection.
MIT Licensed
An IoC container can quickly become a fundamental part of an application. Sometimes this might mean that customisations to the container become unavoidable: with Caraway you can modify the source code and redistribute it without worrying about making your changes or application source available to the world (patches are still appreciated of course!)
Unintrusive
Caraway is designed to be friendly to existing application components and does not require any attributes to be added or assembly references to be made to the container.
Dependency-Free
Only one small assembly is required in order to use Caraway in an application. The container does one thing, but does it well!
First Caraway Beta Released
July 21, 2007 16:13
The first beta can be downloaded from the project page.
There aren't any issues I'm aware of in this version, although there are a considerable number of FxCop warnings to fix.
Eventually Subversion and Trac should be accessible from this site - in the meantime, post any issues in the comments section below.
