我有一个文件按钮来搜索文件。我想获取所选路径并将其显示在iframe中。
<div class="editor-field">
@Html.TextBox("file", "", new { type = "file" })
</div>
我目前的iframe是:
@Html.AntiForgeryToken()
<iframe src="@Url.Action("GetPDF")" ; height="1000" ; width="1000";%>'></iframe>
我当前的(静态)GetPDF方法如下:
public FileStreamResult GetPDF()
{
FileStream fs = new FileStream("D:\\Temp.pdf", FileMode.Open, FileAccess.Read);
return File(fs, "application/pdf");
}
那么请你帮我一下,告诉我如何将iframe更新为我用编辑器字段选择的Pdf?
答案 0 :(得分:1)
我相信你的问题已有答案,如下: Display PDF in iframe
编辑1:
[HttpPost]
public ActionResult GetPdf(HttpPostedFileBase uploadedPdf)
{
// user has selected a file
if (uploadedPdf!= null && uploadedPdf.ContentLength > 0)
{
//you have the file stream here *uploadedPdf*
return File(fs, "application/pdf");
}
return null;
}
为了实现异步文件上传,您可以查看 this或jQueryForm并在文件输入上附加事件。
编辑2: 从流到字节数组的简单方法
using (MemoryStream ms = new MemoryStream()) {
file.InputStream.CopyTo(ms);
byte[] array = ms.GetBuffer();
}