MVC3 - 文件上传控制器/处理程序未接收图像

时间:2011-09-28 01:48:09

标签: c# asp.net-mvc-3 jquery jquery-plugins

我正在使用http://valums.com/ajax-upload/ 文件上传器插件做ajax图像上传,我看到fiddler中的请求通过,当我选择本地图像时,其中的图像。 fiddler请求中包含PNG文件。

来自fiddler -

POST http://localhost:16169/client/account/uploadimage/202?qqfile=logo_l.png HTTP/1.1
Host: localhost:16169
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101 Firefox/6.0.2
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
X-Requested-With: XMLHttpRequest
X-File-Name: logo_l.png
Content-Type: application/octet-stream
Referer: http://localhost:16169/client/events/edit/202
Content-Length: 32660
Pragma: no-cache
Cache-Control: no-cache

�PNG

���
IHDR�����������¯�C���gAMA����
�a���   pHYs�����&�?���tEXtSoftware�Microsoft Office�5q��IDATx^��G�=���8,����@p
�ݓ�@�$��������.+��T���H���ϗ}��<��ܹsgg�O�����6111A���A2�@J�%�K!��K��)����ζ)�Mm��@�{�;ˤ�
ˤt�d���FK���og�Ц�6�a �=�eR�?�eR:m2�@J�%�F���m
hS@��0�����2)��2)�6b �ђa����6�)�MvHv�og���Oa��N�1��hɰ���l���&;$����L����LJ�M�Hi�d�h�v�Mm

我已经截断了请求,但您知道图片正在帖子正文中传输。

但是当我做的时候

var image = WebImage.GetImageFromRequest();

在处理此发布请求的控制器中。图像显示为null,查看调试器所有其他值都存在。

Request.Files.Count = 0 

任何经历过这个,或者可以帮我调试的人都将不胜感激。感谢。

1 个答案:

答案 0 :(得分:3)

找到解决方案..

 WebImage image = new WebImage(Request.InputStream);

而不是 -

var image = WebImage.GetImageFromRequest();