PDFsharp无法找到图像(未找到图像)

leo*_*ora 10 c# asp.net-mvc pdfsharp

我在ASP.NET MVC应用程序中使用PDFsharp.我想添加一个图像,但不管我把它放在哪个目录中,它似乎无法找到它.我有这样的代码,因为我正在尝试复制示例应用程序

 Section section = document.AddSection();
 Image image13 = section.AddImage("../../images/logo.png");
Run Code Online (Sandbox Code Playgroud)

无论我把这个图像放在什么目录中,当生成PDF时,我在PDF上看到一条错误,上面写着" 找不到图像 "

还有其他人看过这个问题吗?

Mar*_*rko 10

它可能正在寻找一条完整的道路?

尝试

Image image13 = section.AddImage(Server.MapPath("~/images/logo.png"));
Run Code Online (Sandbox Code Playgroud)


Je *_*not 5

我在asp.net mvc应用程序中使用pdfsharp。

顺便说一句:您使用的不是PDFsharp,而是使用的是MigraDoc。

MigraDoc搜索相对于当前目录的图像。ASPX页面被编译到一个临时目录中并从中执行,而不是从项目目录中执行。因此,相对路径将无法按预期工作。

Assembly.CodeBase可能有助于定位图像。Assembly.Location指示临时目录。

Assembly.CodeBase可以在ASP.NET和.NET之间共享的代码中使用。也可以使用Server.MapPath(由Marko建议),但是它仅在ASP.NET中有效。