Differentiating web.config between dev, staging and production environments

Anyone have any good tips on handling differences in web.config settings between environments? I’ve considered creating a ‘config’ folder in our source control system but outside of the web hierarchy, and having the deployment process copy the appropriate config files (web.dev.config,web.staging.config, web.production.config) into the web folder upon deployment. I’ve also seen posts on how to programmatically change the config settings (WCF endpoints, connection strings, etc) when the app starts.

Unable to find the requested .Net Framework Data Provider. It may not be installed

After completing the ASP.NET MVC 3 tutorial (find here), I tried to publish the app online. I contacted the hosting company to be sure if it’s possible to host MVC 3 apps. I had to bin deploy the (dll files) application. So after following some steps on hanselmans blog, I’m getting stuck on following error: