【发布时间】:2025-12-24 19:15:06
【问题描述】:
当我从数据库中获取文件名时,如何在 iframe 中显示文档文件?我的数据库表名是 File,我的 viewmodel 是 MyFileModel。
public ActionResult Create(HttpPostedFileBase file)
{
try
{
if (ModelState.IsValid)
{
db.Files.Add(new File()
{
FileName = Path.GetFileName(file.FileName)
});
db.SaveChanges();
}
}
catch (Exception)
{
var error = "Sorry not save";
}
return Content("");
}
public FileStreamResult GetPDF()
{
var file = db.Files.Single(s => s.Id == 1);
FileStream fs = new FileStream(Server.MapPath(file.FileName), FileMode.Open, FileAccess.Read);
return File(fs, "application/pdf");
//return View(Server.MapPath("~/File/SegmentAdd.txt"));
//return File(fs,"text/plain");
}
<div id="frame">
<iframe src="@Url.Action("GetPDF","Home")" width="900px" height="500px"></iframe>
</div>
`
【问题讨论】:
-
我可以知道您在 FileName 字段中保存的内容只是上传文件的名称或完整路径。如果你只保存上述情况下的文件名,我猜你会收到一个错误。
-
我已经保存了文件名。实际上我想用文件名保存文档文件。
-
您是否在文件系统中保存任何物理文件?
标签: javascript model-view-controller