繁体   English   中英

System.NotSupportedException XDocument.Save

[英]System.NotSupportedException XDocument.Save

我在Silverlight应用程序中有一个XML文件,其中包含应用程序设置,并且将在运行时进行编辑。 到目前为止,我已经能够对应用程序进行反序列化,但是无法保存我对XDocument所做的任何更改。 这是我正在使用的代码。

private XElement _targetRoot;
private XDocument _doc;
private Stream _stream;

private void LoadXmlFile()
{
  WebClient xmlClient = new WebClient();
  xmlClient.OpenReadCompleted += XMLFileLoaded;
  xmlClient.OpenReadAsync(new Uri(_fileName, UriKind.Relative));
}

private void XMLFileLoaded(object sender, OpenReadCompletedEventArgs e)
{
  if (e.Error != null)
  {
    return;
  }
    _stream = e.Result;
    _doc = XDocument.Load(_stream);
    deserializeScenarioList(_doc.Root.Element("scenes"));
}

然后,任何时候我尝试从节点上删除元素,然后通过保存

_doc.save(_stream) 

我得到一个System.NotSupportedException。

流是单向流,在这种情况下,是从服务器到(Silverlight)客户端的流。

为了将更改保存回服务器,Web应用程序将必须公开一个终结点,Silverlight控件可以调用该终结点来将文件传输回。 如果要将ASMX Web服务添加到Web应用程序,则一种简单的方法(当然也可以使用WCF端点和REST端点)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM