MarjaR
asked on
[VB.Net] Building a modular/pluggable web application
We're aiming to build a modular/pluggable web application with the following structure:
* Core Web App: top-level MasterPage, BasePage, BaseControl, Authentication/Authorizati on, 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?
* Core Web App: top-level MasterPage, BasePage, BaseControl, Authentication/Authorizati
* 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?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
I think the sub-projects are just what I need. Thank you for pointing me towards http://blogs.msdn.com/webdevtools/archive/2006/07/01/652986.aspx !
Happy to assist.
ASKER