【发布时间】:2013-12-25 04:58:40
【问题描述】:
我正在尝试使用 dropzone.js 在我的 ASP.NET MVC 应用程序中上传图像。我能够以编程方式设置 dropzone,单击它,选择图像,当我在文件对话框中单击“打开”时,控制器中会触发正确的操作。但是,HttpPostedFileBase 总是返回为空,所以我不能对图像做任何事情。但是,在客户端,它可以正确显示图像缩略图,尽管我无法在服务器端获取它。
这是 HTML:
<div style="float:left;margin-right:2px;" id="mainImage">
<img src="/images/AddImage_button.png" class="dz-message" />
</div>
这是我在文档准备好后调用的js代码:
var myDropzone = new Dropzone("div#mainImage", { url: "/Market/UploadImage" });
这是控制器内部的动作调用:
public ContentResult UploadImage(HttpPostedFileBase imageFile)
{
if (imageFile == null || imageFile.ContentLength == 0)
{
//.....
}
}
动作被命中,但 imageFile 为空。有没有人有任何想法?顺便说一句,“dz-message”类被添加到 dropzone 内的图像占位符中,因为在此之前它是不可点击的。我在某个地方读到它可以解决该问题并且它有效。
任何想法为什么我的 imageFile 为空?
【问题讨论】:
-
Dropzone 使用的默认参数名称是
file,您的默认参数名称是imageFile。将imageFile更改为file就可以了 -
就是这样。谢谢!
-
@RaraituL 将其发布为答案 ....它对像我这样的新手很有帮助
-
@suhailMumtazAwan 完成
标签: asp.net-mvc image-uploading image-upload dropzone.js