views:

49

answers:

1

I have an interface that others can implement. I want people to be able to create a concrete implementation of the interface, and then be able to drop their .dll into the /bin directory, and then have my asp.net web application use their implementation.

Is this possible?

Any other ideas on how to make a plugin type architecture so people using the web application can extend it w/o having to change the base codebase?

+2  A: 

Take a look at the Managed Extensibility Framework. It will be a part of the Base Class Library in .NET 4, but you can use it already with .NET 3.5 with the open source version.

It is particularly designed for extensibility scenarios (hence the name).

Another option entirely is the types in the System.AddIns namesapce (available in .NET 3.5).

This post by Krzysztof Cwalina explains how the two fit together (or not).

Mark Seemann