1
我正在使用zip文件作为xml文件的存储库,并且正在尝试保存/更新文件。通过Stream将XElement保存到ZipFile中
我有,
protected override void SaveFile()
{
MemoryStream ms = new MemoryStream();
var sr = new StreamWriter(ms);
table.Save(sr); // XElement table is filled elsewhere
ZipEntry entry = Repository.zip.Entries.FirstOrDefault(z => z.FileName == path);
if (null == entry)
Repository.zip.AddEntry(path, ms);
else
Repository.zip.UpdateEntry(path, ms);
}
但我得到一个空的XML文件作为一个结果。
存储库通过using()
打开,它的Dispose调用SaveFile()
为每个需要保存的xml文件。然后它调用zip.Save()
,然后zip.Dispose()
。
我哪里错了?我使用.NET 3.5,所以我不能使用XElement.Save(流)
谢谢 - 我不经常使用流的.Net,所以忘记了那个小小的警告。 –