Introduction
Web.config transformations allow us to modify the web.config which is used when an application is deployed.
This is important because it allows us to have checked/prebuilt configurations for each application. When you deploy a Web site, you often want some settings in the deployed application's Web.config file to be different from the development Web.config file. For example, you might want to disable debug options or change connection strings; so that they point to a different database.
Implementation
To add the new configurations, go to ConfigurationManager.
Add a new configuration
Add a new configuration named "Test" and select Copy Settings from <Empty>. If you want to copy the setting from the existing debug/release file, you can select debug/release option.
On the Web.config, right-click and select "Add Config Transform".
This adds web.config transformations to the project file.
If inside web.config, you have a value named "ApplicationConnectionString", you can transform the value of this key depends on the environment you need.
Inside your Web.Test.config, you can specify transformations and values that are specific to the Test environment. For example, I am transforming the "ApplicationConnectionString" to be the value "Test Environment db Connection string".
Do Not Forget To Add The Transformation And Locator Attributes
The Match locator attribute identifies the add element in the connectionStrings section, as the element to be changed. The SetAttributestransform attribute specifies that this element's connectionString attribute should be changed to "Test Db Connection String ".
If you want to make sure that these changes were properly written, you can preview the changes by right-clicking on the transformation file and selecting "Preview Transform".