Suppose you are to create a single, global e-commerce application to support multiple markets in different regions of the world using ASP.NET MVC.
Although most of the business logic for the application is reusable for different markets, some markets want to implement their own views and client side validation logic depending on the controller action called. The controller logic should remain the same, only the view should be altered depending on the specific market's need—and they will supply the view to use.
In short, you need to provide a way for your MVC to be extensible for these situations.
What recommendations can anyone provide as to how to best handle this?
What are the best practices around extensibility with MVC controllers/views within this context?
Or is it a bad idea overall?
I'm hoping for something clean that reduces the risk of breaking the rest of the MVC code base.