如何使用 asp.net 从路径或文件夹下载 PDF 文件
Posted
技术标签:
【中文标题】如何使用 asp.net 从路径或文件夹下载 PDF 文件【英文标题】:How can I download a PDF file from a path or folder using asp.net 【发布时间】:2020-11-17 07:15:38 【问题描述】:下午好,我有一个 asp.net 项目,我希望通过一个 asp.net c# 表单,患者可以通过他们的识别号或代码从路径或文件夹下载证书,该文件夹包含 pdf并按ID号组织
谢谢
【问题讨论】:
您的问题过于宽泛,不符合社区准则。请写下您面临的问题,到目前为止您尝试过的内容,分享您的一些代码。同时更正标签。是关于 asp.net 还是 asp.net.mvc 的问题 - 两种截然不同的技术。 【参考方案1】:由于你的描述模糊,我不确定你是不是一个mvc项目 或核心项目。
以下是各项目下载pdf的案例,请参考:
在mvc中:
public ActionResult DownLoad()
return View();
[HttpPost]
public ActionResult DownLoad(string id)
//PdfFiles is the name of the folder where these pdf files are located
var path = Server.MapPath("~/PdfFiles/pdf" + id + ".pdf");
var memory = new MemoryStream();
using (var stream = new FileStream(path, FileMode.Open))
stream.CopyToAsync(memory);
memory.Position = 0;
return File(memory, "application/pdf", Path.GetFileName(path));
查看:
<form method="post" action="DownLoad">
Pdf Id: <input id="Text1" type="text" name="id" />
<input id="Submit1" type="submit" value="submit" />
</form>
这是测试结果:
在核心中:
public IActionResult DownLoad()
return View();
[HttpPost]
public async Task<IActionResult> DownLoad(string id)
//here i put the PdfFiles folder in the wwwroot folder
var path = Path.Combine(
Directory.GetCurrentDirectory(),
"wwwroot", "PdfFiles/pdf" + id + ".pdf");
var memory = new MemoryStream();
using (var stream = new FileStream(path, FileMode.Open))
await stream.CopyToAsync(memory);
memory.Position = 0;
return File(memory, "application/pdf", Path.GetFileName(path));
查看:
<form asp-action="DownLoad" method="post">
Pdf Id: <input id="Text1" type="text" name="id"/>
<input id="Submit1" type="submit" value="submit" />
</form>
这是测试结果:
【讨论】:
以上是关于如何使用 asp.net 从路径或文件夹下载 PDF 文件的主要内容,如果未能解决你的问题,请参考以下文章
asp.net mvc 已知文件名,如何得到该文件的绝对路径。在线急等