使用HttpPostedFile编辑视图模型绑定

时间:2012-11-23 03:32:37

标签: c# asp.net-mvc-3 view model httppostedfile

我有一个ViewModel:

    public HttpPostedFileBase File { get; set; }
    public string Notes { get; set; }

Create视图中,我有<input type="file" name="file" />HttpPostedFile绑定到模型。到目前为止,非常好。

当我尝试使用各自的视图开发“编辑”操作时,我的问题就开始了。 我根本没有问题来显示字符串属性Notes的编辑器字段,这部分很容易。

但是,如何在<input type="file" name="file" />视图中显示Edit的实际值?如何将字节数组绑定到ViewModel的File属性?这是正确的方法吗?还有其他更好的解决方案吗我被困在这里,非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

您不能。 <input type="file" />不是用于编辑文件,只是为了上传它们。

如果您只想在编辑视图中删除该文件,请尝试此操作(仅举例):

  1. 将bool属性DeleteFile添加到编辑视图模型
  2. 将该属性添加为编辑视图中的复选框
  3. 在编辑方法中检查DeleteFile是否设置为true,如果是,请查找并删除附加到您正在编辑的记录的文件
  4. 您可以将File重命名为UploadedFile(因此它更清晰一点)。但这当然取决于你。