2016-03-12 2 views
0

Мне нужно изменить манифест приложения в процессе создания приложения, и я пытаюсь использовать для этого MSBuildCommunityTasks. Задача, что я использую выглядит следующим образом:Неправильный XPath для Package.appxmanifest (XML)

<XmlUpdate 
     Namespace="" 
     XmlFileName="$(ManifestFile)" 
     XPath="//Identity[@Version]/@Version" 
     Value="$(App_Version).$(Revision)"/> 

Но когда начать процесс сборки я получаю только это:

Updating Xml Document "Package.appxmanifest". 0 node(s) selected for update. 

Мой XPath неправильно. Я пытаюсь использовать проверки подлинности в реальном времени XPath, но я не могу выбрать правильное выражение XPath для этого файла, мне нужна помощь для этого.

Мой файл манифеста:

<?xml version="1.0" encoding="utf-8"?> 
<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest" xmlns:m3="http://schemas.microsoft.com/appx/2014/manifest" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"> 
    <Identity Name="1234567890" Publisher="12345678" Version="9.9.9.999" /> 
    <mp:PhoneIdentity PhoneProductId="123456789" PhonePublisherId="1234567890" /> 
    <Properties> 
    <DisplayName>Name</DisplayName> 
    <PublisherDisplayName>PlaceHolder</PublisherDisplayName> 
    <Logo>Assets\StoreLogo.png</Logo> 
    </Properties> 
    <Prerequisites> 
    <OSMinVersion>6.3.1</OSMinVersion> 
    <OSMaxVersionTested>6.3.1</OSMaxVersionTested> 
    </Prerequisites> 
    <Resources> 
    <Resource Language="x-generate" /> 
    </Resources> 
    <Applications> 
    <Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="DT.PlaceHolder.WP.App"> 
     <m3:VisualElements DisplayName="PlaceHolder" Square150x150Logo="Assets\Logo.png" Square44x44Logo="Assets\SmallLogo.png" Description="PlaceHolder" ForegroundText="light" BackgroundColor="transparent"> 
     <m3:DefaultTile Wide310x150Logo="Assets\WideLogo.png" Square71x71Logo="Assets\Square71x71Logo.png"></m3:DefaultTile> 
     <m3:SplashScreen Image="Assets\SplashScreen.png" /> 
     </m3:VisualElements> 
    </Application> 
    </Applications> 
    <Capabilities> 
    <Capability Name="internetClientServer" /> 
    <DeviceCapability Name="location" /> 
    </Capabilities> 
</Package> 

ответ

0

Я нашел решение. Это работает для меня:

<XmlUpdate 
     Namespace="" 
     XmlFileName="$(ManifestFile)" 
     XPath="//*[local-name()='Identity']/@Version" 
     Value="$(App_Version).$(Revision)"/> 
Смежные вопросы