我从远程机器加载xml

时间:2013-02-12 08:59:37

标签: c# xml xmldocument

我有像

这样的网址
http://steepgraph5-pc/sgs/Client/Innovator.xml

从该url我将Innovator.xml加载到XmlDocument并获取包含

之类路径的节点
C:\\Program Files (x86)\\Aras\\Innovator\\InnovatorServerConfig.xml 

现在我必须将InnovatorServerConfig.xml加载到新的XmlDocumnet中,但这条路径是服务器本地的,我必须从客户端加载它。我正在使用c#

C#代码就像:

XmlDocument document = new XmlDocument();
document.Load("http://steepgraph5-pc/sgs/Client/Innovator.xml");
string path=document.SelectSingleNode("/ConfigFilePath/@value").Value;
XmlDocument ServerConfigdocument = new XmlDocument();
ServerConfigdocument.Load(path);

2 个答案:

答案 0 :(得分:0)

无法将任意文件系统路径转换为从远程计算机访问该路径的方法。

您需要使用某种网络协议来访问它。您似乎已选择HTTP。

鉴于您使用的是HTTP,您必须:

  • 想要访问服务器实际可用的文件
  • 了解服务器如何将其Document Root映射到文件系统

然后您可以将文件路径转换为URL。

这对客户来说不是一件明智的事。服务器重写XML并用HTTP URI替换本地路径会更有意义。

答案 1 :(得分:0)

Innovator服务器配置只是Innovator服务器端启动时加载的文件。

如果您编辑它,则在重新启动IIS网络服务器之前它将无效。

我建议只将远程桌面添加到服务器,编辑文件并重新启动网络服务器。

如果您希望远程访问,则可以通过WEBDAV访问Innovator根文件夹。这可以由任何远程计算机挂载或浏览,就像它是本地磁盘一样。 然后在编辑之后,使用IIS的远程管理功能重新启动服务器。