views:

165

answers:

4

I'd like to avoid coding my own version of IFactory, ILog, IRepository and other common interfaces & implementations in my projects but find that commonly used libraries containing these tend to be focused on a particular concrete subsystem (one ORM, one IoC container, one logger). I've come across a some that seem more abstract (NCommon has three repository implementations) but I was wondering if there are any you could add or recommend?

Thanks!

James

PS - My original question was a bit too general, but I greatly appreciate your answers and recommendations and will check them all out.

+1  A: 

One of the best .NET open source library projects, in my opinion, is the Castle Project. They have an MVC called MonoRail (however ASP.NET MVC is now much better), an ActiveRecord implementation, and an IoC Container called MicroKernel/Windsor. There are also many other smaller but useful libraries like DynamicProxy.

Currently my favorite .NET library project.

http://www.castleproject.org/

For a GREAT enterprise service bus, I much prefer to use Udi Dahan's NServiceBus, which is free, open source, and extremely efficient (one case study showed a throughput of 100 million durable and 900 million non-durable messages per hour...a billion message throughput.)

http://www.nservicebus.com/

jrista
+3  A: 

Castle Project

Sprint.NET

  • "Spring.NET is an open source application framework that makes building enterprise .NET applications easier" (from website)

Others...

Jon Erickson
All the answers were good, had to pick one, thanks to every for the suggestions.
+2  A: 

Check out the Design Pattern Framework at the data & object factory. They have implementations of tons of patterns. And of course there is Enterprise Library.

JP Alioto
A: 

Generally speaking the Microsoft Patterns and Practices site has some good information...

Prism Composite Application Guidance is particularly relevant to your question.

+1 to Castle Project too!

John Weldon