2015-04-15 3 views
0

У меня есть веб-служба, которая использует XML-документ, и я пытаюсь добавить функцию, которая добавляет новый узел в документ XML. Он работает нормально и не прерывается, но функция сохранения не работает? Вот код;Редактирование документа XML из метода WebService

[WebMethod] 
public void AddNodeTEST() 
{ 
    XmlDocument xmlUpdateCfg = new XmlDocument(); 

    try 
    { 
     xmlUpdateCfg.Load(Context.Request.MapPath("Updates.xml")); 
    } 
    catch (Exception ex) 
    { 

    } 

    XmlNode updateInfo = xmlUpdateCfg.SelectSingleNode("updateinfo"); 

    /* Create the downloadmodule node */ 
    XmlNode newDownloadModule = xmlUpdateCfg.CreateNode(XmlNodeType.Element, "downloadmodule", null); 
    newDownloadModule.InnerText = "download/test.CAB"; 
    XmlAttribute downloadModuleName = xmlUpdateCfg.CreateAttribute("name"); 
    downloadModuleName.Value = "Test"; 
    newDownloadModule.Attributes.Append(downloadModuleName); 

    /* Create the version node */ 
    XmlNode newVersion = xmlUpdateCfg.CreateNode(XmlNodeType.Element, "version", null); 
    XmlAttribute versionMaj = xmlUpdateCfg.CreateAttribute("maj"); 
    versionMaj.Value = "1"; 
    XmlAttribute versionMin = xmlUpdateCfg.CreateAttribute("min"); 
    versionMin.Value = "2"; 
    XmlAttribute versionBld = xmlUpdateCfg.CreateAttribute("bld"); 
    versionBld.Value = "3"; 
    XmlAttribute versionRev = xmlUpdateCfg.CreateAttribute("rev"); 
    versionRev.Value = "4"; 
    newVersion.Attributes.Append(versionMaj); 
    newVersion.Attributes.Append(versionMin); 
    newVersion.Attributes.Append(versionBld); 
    newVersion.Attributes.Append(versionRev); 

    /* Add the newVersion node to the newDownloadModule node */ 
    newDownloadModule.AppendChild(newVersion); 

    /* Add the newDownloadModule to the updateinfo Node*/ 
    updateInfo.AppendChild(newDownloadModule); 

    xmlUpdateCfg.Save("Updates.xml"); 
} 

и вот структура XML;

<?xml version="1.0" encoding="utf-8" ?> 
<updateinfo> 
    <downloadmodule name="test"> 
    <version maj="1" min="0" bld="4" rev="0"/> 
    Download/cabfile.CAB 
    </downloadmodule> 
</updateinfo> 

Любая помощь с благодарностью, спасибо !.

+1

xmlUpdateCfg.Save (Context.Request.MapPath ("Updates.xml")); – Biscuits

ответ

0

Не следует ли вызывать xmlUpdateCfg.Save (Context.Request.MapPath ("Updates.xml")), чтобы он сохранял его в том же месте, откуда он его читал?

+0

ah well thats досадно просто, спасибо Russ (And Biscuits) – g0nz0YARA

+0

Счастлив помочь! Пожалуйста, отметьте это как принятый ответ в удобное для вас время! –

+0

Я тоже пытался, но он сказал, что мне нужно подождать 6 минут или около того! – g0nz0YARA

Смежные вопросы