A few guys on our team are of the opinion that every web page in the application should be a web user control. So you'll have all of your html + event handling in the Customer.ascx, for example, and there will be a corresponding Customer.aspx page that contains Customer.ascx control.
These are their arguments:
- This practice promotes versatility, portability, and re-usability.
- Even if the page is not re-used right now, it might be in a future.
- Customer page might need to move to a different location or renamed sometimes in a future and moving user controls is easier.
- This is a recommendation by MS for new development.
Is this really a recommendation for new development? Are there any drawbacks to this strategy? I agree that it's nice to have a user control on hand if the need arises, but it seems to be an overkill to do this to the entire application "just in case we need it later".