Asp.net mvc 4 为什么文件上传器不工作?

Asp.net mvc 4 为什么文件上传器不工作?,asp.net-mvc-4,Asp.net Mvc 4,我创建了一个示例mvc应用程序来测试文件上载我读了这篇有用的文章并这么做了,但客户端验证器不起作用,并给出错误消息我的所有代码是: 我在heder标签中附上了这些: <script src="~/Scripts/jquery-1.8.2.min.js"></script> <script src="~/Scripts/jquery-ui-1.8.24.min.js"></script> <script src="~/Scripts/jquer

我创建了一个示例mvc应用程序来测试文件上载我读了这篇有用的文章并这么做了,但客户端验证器不起作用,并给出错误消息我的所有代码是:

我在heder标签中附上了这些:

<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery-ui-1.8.24.min.js"></script>
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>  
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
错误:

Unhandled exception at line 4, column 9003 in http://localhost:6284/Scripts    
/jquery.validate.min.js
   0x800a138f - JavaScript runtime error: Unable to get property 'call' 
   of undefined or null reference
我认为:

 @using (Html.BeginForm("FileUpload", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
    { 
        @Html.ValidationSummary();
        <fieldset>
            <legend>Registration Form</legend>
            <ol>
                <li class="lifile">
                    @Html.TextBoxFor(m => m.myFile, new { type = "file" })
                    @Html.ValidationMessageFor(m => m.myFile)

                </li>
            </ol>
            <input type="submit" id="btnSubmit" value="Upload" />
        </fieldset>
    }
@使用(Html.BeginForm(“FileUpload”,“Home”,FormMethod.Post,new{enctype=“multipart/formdata”}))
{ 
@Html.ValidationSummary();
登记表
  • @TextBoxFor(m=>m.myFile,新的{type=“file”}) @Html.ValidationMessageFor(m=>m.myFile)
  • }
    对于文件上载,您可以使用此代码

    在控制器中:

    [HttpPost]
    public ActionResult Create(EventModel eventmodel, HttpPostedFileBase file)
    { 
       if (ModelState.IsValid)
       {
    
          //you can validate file here. if okay continue...
    
          var filename = Path.GetFileName(file.FileName);
          var path = Path.Combine(Server.MapPath("~/Uploads/Photo/"), filename);
          file.SaveAs(path);
          eventmodel.Url = filename;
    
          _db.EventModels.AddObject(eventmodel);
          _db.SaveChanges();
          return RedirectToAction("Index");
       }
       return View(eventmodel);
    }
    
    和视图:

    <div>
       Image
       <input type="file" name="file" id="file" />
       @Html.HiddenFor( model => model.ImageUrl)
       @Html.ValidationMessageFor( model => model.Url )
    </div>
    
    
    形象
    @Html.HiddenFor(model=>model.ImageUrl)
    @Html.ValidationMessageFor(model=>model.Url)
    
    看看轮胎是什么?我更改了答案。轮胎是我在一家轮胎公司的旧代码中留下的。谢谢你的关注。
    <div>
       Image
       <input type="file" name="file" id="file" />
       @Html.HiddenFor( model => model.ImageUrl)
       @Html.ValidationMessageFor( model => model.Url )
    </div>