SlideShare a Scribd company logo
1 of 7
XML Transformation Syntax
by Jax
• Locator Attribute Syntax
– Condition
– Match
– XPath

• Transform Attribute Syntax
–
–
–
–
–
–
–
–

Replace
Insert
InsertBefore
InsertAfter
Remove
RemoveAll
RemoveAttributes
SetAttributes
Sample
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="appName" value="Test-Project" />
</appSettings>
</configuration>

<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add key="appName" value="Publish-Project" xdt:Transform="Replace" xdt:Locator="Match(key)" />
</appSettings>
</configuration>
Locator Attribute Syntax
<add key="appName"
value="Publish-Project"
xdt:Transform="Replace"
xdt:Locator="Condition(@key='appName' or @key='appTitle')”
/>
<add key="appName" 
         value="Publish-Project" 
         xdt:Transform="Replace" 
         xdt:Locator="Match(key)" 
/>
<add key="appName" 
         value="Publish-Project" 
         xdt:Transform="Replace" 
         xdt:Locator="XPath(configuration/appSettings[@name='appName'])" 
/>
Transform Attribute Syntax
<add key="appName“ value="Publish-Project“
xdt:Transform="Replace“ xdt:Locator="Match(key)"
/>
<add key="appName“ value="Publish-Project“
xdt:Transform=“Insert“
/>
<add key="appName“ value="Publish-Project“
xdt:Transform=“InsertBefore(/configuration/appSettings/add[@key=‘site‘])"
/>
<add key="appName“ value="Publish-Project“
xdt:Transform=“InsertAfter(/configuration/appSettings/add[@key=‘site‘])"
/>
<add key="appName“
xdt:Transform=“Remove“ xdt:Locator="Match(key)"
/>
<add key="appName“
xdt:Transform=“RemoveAll“ xdt:Locator="Match(key)"
/>
<add xdt:Transform=“RemoveAll“ />
<add key="appName"
xdt:Transform="RemoveAttributes(debug,batch)"
xdt:Locator="Match(key)"
/>
<add key="appName" desc="Project Description"
xdt:Transform="SetAttributes(desc)" xdt:Locator="Match(key)"
/>
參考來源
Web.config Transformation Syntax for Web Project
Deployment Using Visual Studio
http://msdn.microsoft.com/en-us/library/dd465326.aspx

More Related Content

More from LearningTech

More from LearningTech (20)

vim
vimvim
vim
 
PostCss
PostCssPostCss
PostCss
 
ReactJs
ReactJsReactJs
ReactJs
 
Docker
DockerDocker
Docker
 
Semantic ui
Semantic uiSemantic ui
Semantic ui
 
node.js errors
node.js errorsnode.js errors
node.js errors
 
Process control nodejs
Process control nodejsProcess control nodejs
Process control nodejs
 
Expression tree
Expression treeExpression tree
Expression tree
 
SQL 效能調校
SQL 效能調校SQL 效能調校
SQL 效能調校
 
flexbox report
flexbox reportflexbox report
flexbox report
 
Vic weekly learning_20160504
Vic weekly learning_20160504Vic weekly learning_20160504
Vic weekly learning_20160504
 
Reflection &amp; activator
Reflection &amp; activatorReflection &amp; activator
Reflection &amp; activator
 
Peggy markdown
Peggy markdownPeggy markdown
Peggy markdown
 
Node child process
Node child processNode child process
Node child process
 
20160415ken.lee
20160415ken.lee20160415ken.lee
20160415ken.lee
 
Peggy elasticsearch應用
Peggy elasticsearch應用Peggy elasticsearch應用
Peggy elasticsearch應用
 
Expression tree
Expression treeExpression tree
Expression tree
 
Vic weekly learning_20160325
Vic weekly learning_20160325Vic weekly learning_20160325
Vic weekly learning_20160325
 
D3js learning tips
D3js learning tipsD3js learning tips
D3js learning tips
 
git command
git commandgit command
git command
 

20131108 Web.config transformation_syntax by jax