在Azure File Storage页面中显示(或打开)pdf文件

时间:2019-04-22 14:49:31

标签: .net pdf azure-files

存在无法在页面中显示pdf文件或无法在浏览器中下载该文件而无法打开的问题。

我正在使用.net core 2.1和Azure文件存储。从存储中获取文件时,我有了CloudFile对象,此后,我尝试使用FileStream读取此文件并发送到页面。或以某种方式在浏览器中打开此文件而不下载它。 文件存储处于私有模式,因此我无法通过直接链接获取文件,因此只需要读取文件并将其发送到页面/浏览器即可显示。

您能否解决此问题,因为找不到适合pdf格式的CloudFiles读取的解决方案?也许有一些免费的图书馆。 是从pdf插入到剃刀视图的信息吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

我正在使用下一个,它的工作原理是: 这里的“文件”-是“ CloudFile”对象。

var stream = await file.OpenReadAsync();

byte[] bytes = new byte[stream.Length];
stream.Read(bytes, 0, Convert.ToInt32(stream.Length));

return File(bytes, "application/pdf");

答案 1 :(得分:0)

实际上,您可以直接使用流,而无需使用字节数组,只需更少的代码:

var stream = await file.OpenReadAsync();
return File(stream, "application/pdf");