什么是我的Resources目录的IIS虚拟文件路径?

时间:2016-05-12 15:11:34

标签: c# .net iis visual-studio-2013 handlebars.net

我无法找到传递到src标记的<img>属性的正确路径,该属性引用存储在C#项目资源文件夹中的图像。 (构建操作:内容。复制到输出目录:如果更新则复制)

我有一个RESTFUL服务,根据URL中的id,将生成发票PDF。为了生成PDF,该服务使用Handlebars.Net为发票生成HTML,并使用Select.HtmlToPdf将该HTML转换为PDF。

当我浏览代码时,使用Select.HtmlToPdf生成PDF的项目似乎有一个C:\Program Files (x86)\IIS的当前工作目录。 (我发现通过设置快速监视:System.IO.Directory.GetCurrentDirectory()

生成的PDF不显示我想要显示的图像。我在控制台应用程序中按预期完成了这项工作,因此我怀疑问题是我在HTML中传入src参数的路径对于此项目是不正确的。

构建时,我可以在\bin\Resources\中看到图像文件。我应该传递到该src标记的<img>属性的图像资源的相对路径是什么?

更新05/16

我没有生成PDF,而是让我的控制器将HTML返回给浏览器以查看它是否能正确显示。它做了。在这种情况下,src代码的<img>属性为\Resources\image.png。看起来,当浏览器通过调用<baseurl>\Resources\image.png来获取图像时,控制器会正确转换该路径。

所以我的问题是Select.HtmlToPdf没有发出Web请求来获取图像,它将src参数作为它需要加载的图像文件的本地路径,所以我需要找到一种方法来通过IIS环境设置的虚拟目录访问我的bin目录的Resources文件夹。

0 个答案:

没有答案