Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome 如何在ASP.NET Core中的新页面中打开PDF?(谷歌浏览器)_Google Chrome_Asp.net Core - Fatal编程技术网

Google chrome 如何在ASP.NET Core中的新页面中打开PDF?(谷歌浏览器)

Google chrome 如何在ASP.NET Core中的新页面中打开PDF?(谷歌浏览器),google-chrome,asp.net-core,Google Chrome,Asp.net Core,Google Chrome有一个非常简洁的功能,它可以在一个新的选项卡中打开.pdf文件,如果下载时页面提供正确的话 我想知道如何在最新版本的.NETCore中实现这一点 我当前的配置如下所示: 后端: [HttpGet(“下载”)] 公共IActionResult下载帮助文件() { string path=path.Combine(_environment.WebRootPath,“files/dummy.pdf”); var net=new System.net.WebClient();

Google Chrome有一个非常简洁的功能,它可以在一个新的选项卡中打开.pdf文件,如果下载时页面提供正确的话

我想知道如何在最新版本的.NETCore中实现这一点

我当前的配置如下所示:

后端:

[HttpGet(“下载”)]
公共IActionResult下载帮助文件()
{
string path=path.Combine(_environment.WebRootPath,“files/dummy.pdf”);
var net=new System.net.WebClient();
var数据=净下载数据(路径);
var内容=新的内存流(数据);
var contentType=“应用程序/pdf”;
var fileName=“dummy.pdf”;
返回文件(内容、内容类型、文件名);
}
前端:

@CasesLocalizer[“NeedHelpDownloadOurGuide”]
我还将_target='blank'替换为'new'。 我在google和StackOverflow上搜索过,没有找到任何ASP.NET核心的更新版本

它仍然只是定期下载文件,但不会在新选项卡中显示PDF。
我的代码缺少什么?

您需要返回FileStreamResult

[HttpGet("download")]
public IActionResult DownloadHelpFile()
{
      string path = Path.Combine(_environment.WebRootPath, "files/dummy.pdf");
      var net = new System.Net.WebClient();
      var data = net.DownloadData(path);
      var content = new MemoryStream(data);
      var contentType = "application/pdf";
      var fileName = "dummy.pdf";
      return FileStreamResult (content, contentType, fileName);
}
并使用target=“\u blank”而不是\u target=“blank”

@CasesLocalizer[“NeedHelpDownloadOurGuide”]

您需要返回FileStreamResult

[HttpGet("download")]
public IActionResult DownloadHelpFile()
{
      string path = Path.Combine(_environment.WebRootPath, "files/dummy.pdf");
      var net = new System.Net.WebClient();
      var data = net.DownloadData(path);
      var content = new MemoryStream(data);
      var contentType = "application/pdf";
      var fileName = "dummy.pdf";
      return FileStreamResult (content, contentType, fileName);
}
并使用target=“\u blank”而不是\u target=“blank”

@CasesLocalizer[“NeedHelpDownloadOurGuide”]

如果删除_target属性会发生什么?这是否会像您希望的那样在当前选项卡中打开PDF?尝试使用FileResult而不是IActionResult作为返回type@mason我以前没有_target属性,这会像其他任何文件一样定期下载该文件。@beggarboy我认为它应该是target=“_blank”而不是_target=“如果删除_target属性,会发生什么?这是否会像您希望的那样在当前选项卡中打开PDF?尝试使用FileResult而不是IActionResult作为返回type@mason我以前没有_target属性,这会像其他任何文件一样定期下载该文件。@beggarboy我认为它应该是target=“_blank”而不是_target=“blank”