繁体   English   中英

如果文件存在于ASP.NET MVC中的文件夹和数据库中的文件名中,则在“编辑”中显示带有fileUpload的FileName

[英]Display FileName with fileUpload on Edit if file exists in a folder and filename in database in ASP.NET MVC

在“编辑”上,如何将文件名(以字符串形式存储在SQL数据库中)分配给文件上传控件。

调节器

public ActionResult editLeaveRequest(int id)
{
    var model = hc.leaveRequests.Find(id);
    if (!String.IsNullOrEmpty(model.documentUrl))
    {
        model.documentUpload.FileName = model.fName;
    } 
    return View(model);
}

我已经将文件保存在一个文件夹中,并将其filename(fName)在SQL数据库中作为字符串。 我正在尝试做的是,检查数据库中是否存在filename(fName) ,如果存在,请将其分配给fileUpload的fileName并将此模型传递给ViewPage。

我想要的是显示文件名,并以fileupload控件作为其状态,以通知用户该记录已附加一个文件,并且其文件名等于filename(fName) 但是上面的代码给出了以下错误:

无法将属性或索引器'HttpPostedFileBased.FileName'分配给它-只读

有人可以建议如何实现吗?

您应该接受这样的事实:每次重新加载页面时,文件上传输入将为空。 您需要做的是:

  • 以某种方式表明该文件存在,但是在单独的块中(例如<div>MyFile.png</div>
  • 根据需要添加文件删除功能,或执行model.documentUpload检查是否发布了新文件,如果已发布,则用新文件替换现有文件。
  • 验证您在服务器端提交的表单,以便每个实体仅允许一个文件。

在此处输入图片说明

您需要使用另一个控件来显示当前的FileName,仅在发布时使用HttpPostedFileBase上载新文件,也许在客户端隐藏此控件并添加EDIT按钮以显示此控件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM