0

我有一个 Web.API 服务在“ http://mywebserver/report”处运行,在我的控制器中,我检查以搜索服务器上是否存在静态 html 文件,如下所示:

bool exists = File.Exists( Path.Combine( HostingEnvironment.MapPath( @"\atlas" ), "report.html") );

这工作正常,并且发现我的文件没问题-'atlas' 是虚拟目录路径,所以我应该能够打开' http://mywebserver/atlas/report.html'。问题是,当我将文件存在的布尔值返回给客户端并且可以打开时,如果我尝试从我的 jQuery 打开文件,它会将它放在原始 URL 中,并尝试打开“ http://mywebserver/report/report.html”,这不会工作。

在 IIS 中,我无法将虚拟目录和应用程序目录映射到同一位置……而且我不想在客户端上的完整 Web 服务 URL 中硬编码,例如 window.open(" http://mywebserver/atlas/" + "报告.html”)。

有没有办法解决这个问题?也许是一种让我的控制器将正确的 URL 推送回客户端以打开的方法?如何获取到虚拟目录的 URL 映射?我想我正在努力做到这一点......我只是希望如果找到文件,它会在新窗口中打开......

4

0 回答 0