views:

530

answers:

4

Looking for advice on framework and approach for building a modular web application.

Primary goal is to minimize need for redeployment, but redeployment would be fine on occasion.

OSGI for Java seems like the right idea but I need a .NET implementation.

http://www.osgi.org/Main/HomePage http://stackoverflow.com/questions/126073/modular-web-apps

What about ASP.NET MVC + ???

A: 

Look into domain driven design, Eric Evans book on the topic is a great resource.

You dont need ASP.MVC to build an MVC style application in .Net but it helps having Microsoft's backing :)...

Miyagi Coder
ahhh yes..the down vote with no explanation...
Miyagi Coder
Your answer is too vague. DDD is pretty conceptual/abstract and Fireworks is asking a more concrete question, so a more concrete answer would be adequate.
Mauricio Scheffer
maybe it would of helped if a posted a link...
Miyagi Coder
A: 

If you're looking at .NET then ASP.NET MVC is almost definitely the way you should go. The design allows you to very cleanly separate the various concerns of your application, as well as test them. A drawback it might have, given your requirements, is that any assembly that changed would have to be re-compiled and re-deployed, as an ASP.NET MVC app is not compiled in-place (to my knowledge...).

However, since you've separated your concerns cleanly (right?), and ran all of your unit tests (right?) before deploying, you can deploy a single new assembly that has changed with a high degree of confidence that it won't break anything.

If you're interested in ASP.NET MVC I would highly recommend the new book by Scott Hanselman, Scott Guthrie, Rob Conery, and Phil Haack - the first chapter (200 pages and a full application tutorial!) is available for free online here

Josh E
A: 

There are a lot of ways to accomplish this. Each with their own trade offs.

One way is to have a basic primary site with virtual directories. Each virtual directory would point to a complete, but related, application. The downside is that you will have to specify the base url to use when creating cookies, otherwise one app won't be able to access the cookies of another app.

Another is to create each sub sites through user controls (think DNN). This requires a lot of thought and planning as to how your core application exposes common functionality.

Other ideas generally build upon one of those.

Chris Lively
A: 

I'd use ASP.NET MVC + MEF, you can get quite modular with that.

See this example.

Mauricio Scheffer