【发布时间】:2017-11-30 10:49:01
【问题描述】:
我需要打开 XML 文件(创建 XmlDocument)而不创建本地副本。使用 SSH.NET,我想出了以下代码:
var connectionInfo = new ConnectionInfo("host",
"username",
new PasswordAuthenticationMethod("username", "password"));
using (var client = new SftpClient(connectionInfo))
{
client.Connect();
System.IO.MemoryStream mem = new System.IO.MemoryStream();
client.DownloadFile("filename.xml", mem);
mem.Position=0;
using(XmlReader reader = XmlReader.Create(mem))
{
var docc = new XmlDocument();
docc.Load(mem);
}
client.Disconnect();
}
但是卡在docc.Load(mem)。可能是什么问题?
mem 对象如下所示:
【问题讨论】:
-
请注意,您的
XmlReader未被使用。要么做docc.Load(reader);要么完全删除xml阅读器。 -
@Evk 这对我来说是一个非常愚蠢的错误,改为
docc.Load(reader)解决了这个问题。请作为答案发布,以便我接受。