我有一个简单的wpf应用程序,其中包含一个带有文档查看器的窗口,我用它来显示XPS文档,我写了这个并且它有效。
XpsDocument myDoc = new XpsDocument(@"C:\Users\Ahmad
Elsayed\Desktop\testxpsdoc\xpsTest\xpsTest\Assets\Dokhna - Problems -
Report.xps", FileAccess.Read);
DV.Document = myDoc.GetFixedDocumentSequence();
然而,问题是,当我发布应用程序并在另一台PC上使用时,我得到了这个:
System.IO.DirectoryNotFoundException:找不到部分内容 路径
我尝试使用这样的相对路径:
XpsDocument myDoc = new XpsDocument(@"\Assets\Dokhna - Problems - Report.xps", FileAccess.Read);
但仍然相同,因为我将构建的操作设置为Content,并且如果xrs文件更新则复制。
这也是解决方案资源管理器: Solution Explorer
答案 0 :(得分:1)
您应该获得正在运行的应用程序的基本目录,您可以将其附加到XPS文件的相对路径。只要您将XPS文件放在可执行文件旁边的Assets文件夹中,即使部署应用程序,这也应该有效。
string xpsFilePath = Path.Combine(
AppDomain.CurrentDomain.BaseDirectory,
@"Assets\Dokhna - Problems - Report.xps");
XpsDocument myDoc = new XpsDocument(xpsFilePath, FileAccess.Read);