How to create a modular ASP.NET application ?

Discussion in 'ASP .Net' started by Canice, Aug 1, 2007.

  1. Canice

    Canice Guest

    I'm working on a web application where 90% of it is common 'product'
    code an the other 10% is customer specific.

    I want some method of separating the customer specific presentation,
    business and data access layers from the product code as I don't the
    main product code to be bloated with customer specific code.

    Ideally I'd like to have one solution for the product and one for each
    customer. However I haven't found a way to separate the presentation
    layer.
    I thought that the Web Client Software Factory would work, however it
    still requires the .aspx files for the modules to be part of the main
    web-site/application - which doesn't seem very modular.

    I would also like to be able to use the ASP.NET 2.0 features like
    master pages, themes etc.

    Anyone have experience of such a solution or should I just give up on
    a modular approach :)

    Thanks,
    CJB.
    Canice, Aug 1, 2007
    #1
    1. Advertising

  2. Move your functionality into the business layer, where it belongs. Add a
    facade to aid the UI layer. And, if there is any business that is client
    specific, put into its own library.

    You can, in general, leave the ASPX files alone and use Themes for client
    specific. On the pieces that the form works the same, essentially, for all
    implementations, but slightly different for client, make a client version of
    a library.

    Experience? Sure, I am in the process of doing it now. It is a bugger to get
    it right and you have to plan it out on paper before getting too far into
    coding. If you are still embedding code in your ASPX pages, quit it now. It
    will not be modular.

    If you are not well-versed in tiered development, consider purchasing the
    Design Pattern Framework 2.0 from dofactory.com. It is cheap and will teach
    you patterns in addition to giving you a reference architecture.

    --
    Gregory A. Beamer
    MVP; MCP: +I, SE, SD, DBA
    http://gregorybeamer.spaces.live.com
    Co-author: Microsoft Expression Web Bible (upcoming)

    ************************************************
    Think outside the box!
    ************************************************
    "Canice" <> wrote in message
    news:...
    >
    > I'm working on a web application where 90% of it is common 'product'
    > code an the other 10% is customer specific.
    >
    > I want some method of separating the customer specific presentation,
    > business and data access layers from the product code as I don't the
    > main product code to be bloated with customer specific code.
    >
    > Ideally I'd like to have one solution for the product and one for each
    > customer. However I haven't found a way to separate the presentation
    > layer.
    > I thought that the Web Client Software Factory would work, however it
    > still requires the .aspx files for the modules to be part of the main
    > web-site/application - which doesn't seem very modular.
    >
    > I would also like to be able to use the ASP.NET 2.0 features like
    > master pages, themes etc.
    >
    > Anyone have experience of such a solution or should I just give up on
    > a modular approach :)
    >
    > Thanks,
    > CJB.
    >
    Cowboy \(Gregory A. Beamer\), Aug 1, 2007
    #2
    1. Advertising

  3. Canice

    Canice Guest

    On Aug 1, 4:07 pm, "Cowboy \(Gregory A. Beamer\)"
    <> wrote:
    > Move your functionality into the business layer, where it belongs. Add a
    > facade to aid the UI layer. And, if there is any business that is client
    > specific, put into its own library.
    >
    > You can, in general, leave the ASPX files alone and use Themes for client
    > specific. On the pieces that the form works the same, essentially, for all
    > implementations, but slightly different for client, make a client version of
    > a library.
    >
    > Experience? Sure, I am in the process of doing it now. It is a bugger to get
    > it right and you have to plan it out on paper before getting too far into
    > coding. If you are still embedding code in your ASPX pages, quit it now. It
    > will not be modular.
    >
    > If you are not well-versed in tiered development, consider purchasing the
    > Design Pattern Framework 2.0 from dofactory.com. It is cheap and will teach
    > you patterns in addition to giving you a reference architecture.
    >
    > --
    > Gregory A. Beamer
    > MVP; MCP: +I, SE, SD, DBAhttp://gregorybeamer.spaces.live.com
    > Co-author: Microsoft Expression Web Bible (upcoming)
    >
    > ************************************************
    > Think outside the box!
    > ************************************************"Canice" <> wrote in message
    >
    > news:...
    >
    >
    >
    > > I'm working on a web application where 90% of it is common 'product'
    > > code an the other 10% is customer specific.

    >
    > > I want some method of separating the customer specific presentation,
    > > business and data access layers from the product code as I don't the
    > > main product code to be bloated with customer specific code.

    >
    > > Ideally I'd like to have one solution for the product and one for each
    > > customer. However I haven't found a way to separate the presentation
    > > layer.
    > > I thought that the Web Client Software Factory would work, however it
    > > still requires the .aspx files for the modules to be part of the main
    > > web-site/application - which doesn't seem very modular.

    >
    > > I would also like to be able to use the ASP.NET 2.0 features like
    > > master pages, themes etc.

    >
    > > Anyone have experience of such a solution or should I just give up on
    > > a modular approach :)

    >
    > > Thanks,
    > > CJB.


    Thanks for the reply Gregory.

    The application will be split into DAL, Business and Presentations
    layered and within the presentation layer I'm using the MVP pattern,
    so all that will be in the ASPX pages is the asp.net controls, HTML
    etc. Any UI related logic will be in the Presenter class and all
    business logic will be in a another layer.

    However some of these ASPX pages will still be customer specific and
    I'd prefer not to deploy them with every install.

    Regards,
    Canice.
    Canice, Aug 2, 2007
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Nick Goloborodko

    ASP.NET modular architecture

    Nick Goloborodko, Mar 10, 2005, in forum: ASP .Net
    Replies:
    4
    Views:
    3,809
    Steven Cheng[MSFT]
    Mar 14, 2005
  2. =?Utf-8?B?UmFjaGVs?=

    Provider Model : modular application design issue

    =?Utf-8?B?UmFjaGVs?=, Feb 9, 2006, in forum: ASP .Net
    Replies:
    1
    Views:
    383
    Karl Seguin [MVP]
    Feb 9, 2006
  3. Jorge Godoy
    Replies:
    1
    Views:
    300
    Jorge Godoy
    Sep 9, 2003
  4. Wildemar Wildenburger
    Replies:
    22
    Views:
    1,882
    Ben Finney
    May 20, 2007
  5. carmelo
    Replies:
    7
    Views:
    597
    Rajiv Gupta
    Dec 20, 2011
Loading...

Share This Page