[VB.Net] Building a modular/pluggable web application

Posted on 2008-11-07
Last Modified: 2012-05-05
We're aiming to build a modular/pluggable web application with the following structure:

* Core Web App: top-level MasterPage, BasePage, BaseControl, Authentication/Authorization, Shared Components: CSS, Images, JavaScript libraries, Common ASCX/Server Controls, etc

* Module/Plug-in 1: ASPX Pages (and code behind), sub MasterPage, Private Components: css/images/javascript, ASCX controls, etc

* Module/Plug-in 2: ASPX Pages (and code behind), sub MasterPage, Private Components: css/images/javascript, ASCX controls, etc

In this case, the core application has a set of classes and resources that all plug-ins will depend on, but the core does not depend on any of the plug-ins.

Each module/plug-in is a separate mini application unto its own, rather than a discrete module meant for placing on any chosen page. It will have its own internal structure and relationships, yet be housed within the core application.

For example, if you have a site like this: http://mysite/

Then, plug-in 1 should be accessed via http://mysite/Plug-in1, and any functions therein by http://mysite/Plug-in/Function1.aspx ... etc etc

If we were to implement this in a single-solution / Web Application Project, by putting each plug-in in its own folder, the code would all compile into one web application DLL that will need to be deployed. And that's not what we're looking for, because the plug-ins are meant to be optional extensions to the core application.

We want to be able to distribute the core application, and easily add plug-ins to it lateron.

Any ideas how to go about this?
Question by:MarjaR
    LVL 7

    Accepted Solution

    Use can use one main Web-Aplication-Project (WAP), as the core, and multiple Plugin Sub-WAPs that (1) Refrence the Core-WAP (2) Are set to run as part of the bigger Web-Application(

    An other interesting option is to use Web Application Project Libraries:
    LVL 1

    Author Comment

    Thank you for your fast reply. I will look into those options and get back here.
    LVL 1

    Author Comment

    I think the sub-projects are just what I need. Thank you for pointing me towards !
    LVL 7

    Expert Comment

    Happy to assist.

    Featured Post

    Looking for New Ways to Advertise?

    Engage with tech pros in our community with native advertising, as a Vendor Expert, and more.

    Join & Write a Comment

    AJAX ModalPopupExtender has a required property "TargetControlID" which may seem to be very confusing to new users. It means the server control that will be extended by the ModalPopup, for instance, if when you click a button, a ModalPopup displays,…
    International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
    To add imagery to an HTML email signature, you have two options available to you. You can either add a logo/image by embedding it directly into the signature or hosting it externally and linking to it. The vast majority of email clients display l…
    Migrating to Microsoft Office 365 is becoming increasingly popular for organizations both large and small. If you have made the leap to Microsoft’s cloud platform, you know that you will need to create a corporate email signature for your Office 365…

    734 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    23 Experts available now in Live!

    Get 1:1 Help Now