如何使用FAKE更新XML文件中的属性?
我想从假冒更新xml文件。实际上有版本_没有由teamcity生成的东西,我必须在version.config文件中更新该版本。
我已经看到它可以使用XMLHelper类完成,但我没有得到如何使用它。
这是xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<version-info>
<major-version number="1">
<minor>1-aplha</minor>
<build>123</build>
<revision>112</revision>
</major-version>
</version-info>
例如:我需要分别将主要版本,次要版本,版本,修订版本更改为2,1,12,123。
我该怎么做?
答案 0 :(得分:3)
我快速修改了一个&#39; build.fsx&#39;我的档案。编辑如下:
-(BOOL)silenced {
#if TARGET_IPHONE_SIMULATOR
// return NO in simulator. Code causes crashes for some reason.
return NO;
#endif
CFStringRef state;
UInt32 propertySize = sizeof(CFStringRef);
AudioSessionInitialize(NULL, NULL, NULL, NULL);
AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &state);
if(CFStringGetLength(state) > 0)
return NO;
else
return YES;
}
在构建过程中,它会编辑&#39; myxml.xml&#39;并替换次要标记内的值。编辑后的XML看起来像这样:
// Build the main module with MSBuild
Target "BuildMain" (fun _ ->
XMLHelper.XmlPokeInnerText "./myxml.xml" "/version-info/major-version/minor" "now-beta"
!! "./Kapoin_03_Main/Kapoin_03_Main.fsproj"
|> MSBuild buildDir "Build" buildProps
|> Log "Main build output: " )