使用MVC4上传不起作用。 IO错误

时间:2012-08-12 18:50:41

标签: asp.net-mvc flash uploadify

我使用的是Uploadify 3.1版。当我尝试上传文件时,我收到IO错误。

当我将调试器保留在动作方法中时,它没有击中。

我尝试了以下链接但是甚至想到了同样的错误。

Getting HTTP Error while using uploadify on Asp.net MVC application

请建议我。

查看

@{
    Layout = null;
}
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <link href="@Url.Content("~/uploadify/uploadify.css")" rel="stylesheet" type="text/css" />
</head>
<body>
    <div id="file_upload"></div>

    <script src="@Url.Content("~/Scripts/jquery-1.6.2.js")" type="text/javascript"></script>
@*    <script src="@Url.Content("~/uploadify/swfobject.js")" type="text/javascript"></script>*@
    <script src="@Url.Content("~/uploadify/jquery.uploadify-3.1.js")" type="text/javascript"></script>
    <script type="text/javascript">
        $('#file_upload').uploadify({
            'uploader': '@Url.Content("~/uploadify/uploadify.swf")',
            'flash_url': '@Url.Content("~/uploadify/uploadify.swf")',
            'fileObjName': 'fileData',
            'script': '@Url.Action("Upload", "Home")',
            'cancelImg': '@Url.Content("~/uploadify/cancel.png")',
            'folder': '@Url.Content("~/content/images")',
            'fileDesc': 'Image Files',
            'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
            'auto': true
        });    
    </script>
</body>
</html>

[控制器]

public class HomeController : Controller
{
    public ActionResult Index()
    {
        ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";

        return View();
    }
}


[HttpPost]
public ActionResult Upload(HttpPostedFileBase fileData)
{
    if (fileData != null && fileData.ContentLength > 0)
    {
        var fileName = Server.MapPath("~/Content/Images/" + Path.GetFileName(fileData.FileName));
        fileData.SaveAs(fileName);
        return Json(true);
    }
    return Json(false);
}

3 个答案:

答案 0 :(得分:0)

试试这样:

        $('#file_upload').uploadify({
            'checkExisting': 'Content/uploadify/check-exists.php',
            'swf': '@Url.Content("~/uploadify/uploadify.swf")',
            'uploader': '@Url.Action("Upload", "Home")',
            'auto': false,
            'buttonText': 'Browse',
            'fileTypeExts': '*.jpg;*.jpeg;*.png;*.gif',
            'removeCompleted': false
         });

希望这有帮助。

答案 1 :(得分:0)

您是否检查过上传文件的文件夹的文件夹权限?您需要将该文件夹的权限设置为IIS用户和网络用户

答案 2 :(得分:0)

检查您的控制器,操作必须允许匿名