c#将固定文档转换为xps,但xps viewer不会打开新创建的xps文件

时间:2014-08-25 18:21:06

标签: c# xps fixeddocument

我正在尝试在c#中获取一个固定文档并将其转换为xps然后保存xps以便我可以将其附加到outlook电子邮件,但在我创建xps文件并用于测试目的之后尝试打开在xps文件查看器中的xps文件,我收到一条错误消息,说明该文件无法打开,下面粘贴了我将固定文档转换为xps的代码部分的副本:

//save fixed document in temp directory as xps document
            string filename = System.Environment.GetEnvironmentVariable("TEMP") + @"\TempFixedDocument.xps";
            System.IO.File.Delete(filename);
            XpsDocument xpsd = new XpsDocument(filename, FileAccess.ReadWrite);
            XpsDocumentWriter xw = XpsDocument.CreateXpsDocumentWriter(xpsd);
            xw.WriteAsync(fxdDoc);
            xpsd.Close();

1 个答案:

答案 0 :(得分:1)

我认为这是因为你使用WriteAsync,但不要等到写完成。您应该等到文件写入完成后才关闭文档。

您可以使用await关键字:

await xw.WriteAsync(fxdDoc);