Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6004163
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 23, 20262026-05-23T01:13:27+00:00 2026-05-23T01:13:27+00:00

I am working on a project that is developing a website application for 3

  • 0

I am working on a project that is developing a website application for 3 clients. All clients are happy with the base product that we are producing. 2 of them have some slightly different requirements – about the visibility of certain controls, different data binding to dropdowns, etc.

My question is – knowing that each of the 3 clients will keep coming with their own specific requirements, what is the best way of implementing these requirements at the UI??

I do not like the idea of having a series of IF-statements in each web form that I have that goes and manipulates drop-downs and control visibility individually. It simply litters my nicely organised files with custom requirements.

Can someone point me to a pattern(s) that could fit the bill?

Have a look at this simplified hypothetical example to see what I am talking about:

  • A web form is populated with a drop-down that has 3 menu items (e.g. Home number, Business number, Overseas number); the drop-down is used to record a phone number type to a contact

  • 2 of my clients, are happy to associate as many phone types to a contact (even if duplicates can occur)

  • 1 client would like us to only show ‘Home number’ and ‘Overseas number’ in the dropdown if the current contact has already associated a ‘business number’ to his profile

I am thinking that I could possibly throw a notification event that contains the dropdown instance and a unique name for it. And then i have different ‘client listeners’ that consume these events and modify the controls that they get passed in separate classes – hence each client configuration is kept in nice clean silos.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-23T01:13:28+00:00Added an answer on May 23, 2026 at 1:13 am

    The following method is what i used on my project to do configuration specific changes for different clients.

    The ASP.Net project is developed in a modular, common base that all clients get.

    After the Page is populated with appropriate Controls and just before we start rendering, I pass the Page object to a module that does all the client specific configuration changes.

    So in the base call of my page, I have something like this:

    protected void Page_Load(object sender, EventArgs e)
    {
        PreRender += ConfigurationInterceptors;
    }
    

    The ConfigurationInterceptors method will pass the current Page object to a module that will read the client specific configuration, loop through the controls it needs to be modify, and modifies at runtime and before being server to the client webpage.

    protected void ConfigurationInterceptors(object sender, EventArgs e)
    {
        Interceptor interceptor = new Interceptor(this.Page);
    }
    

    The Interceptor class is then a standalone tier that runs a series of FindControl calls and modify as required.

    In this way, this pattern has managed to allow us to put client specific customizations in a separate silo and not complicate the base common code base.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm currently working on a consumer mobile application project and have read that 40%
I am working on a project that is a website, a mobile app, and
I'm working on a project that interfaces with Google Data APIs. I have several
I'm developing an EMR Application as my project. there Im using WCF to transfer
I'm currently developing a database class for a project I've been working on. I
For a recent project a friend of mine and I have been working on,
I am working on a project that uses visual studio's GUI DB designer to
I'm working on a project that essentially creates files via a shell script using
I am working on a project that requires a sound to play when a
I am developing a java project with maven which generates code files. I am

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.