c# - 使用 Ajax 发布的 MVC 中的文件附件

标签 c# jquery asp.net-mvc asp.net-mvc-4

我在 MVC 应用程序中工作。我的页面中有一个文件上传控件。 我将使用文件上传控件一次只附加文件。我将在带有删除选项的网格中显示文件名。

当我点击保存按钮时需要保存这些文件(但保存按钮通过 Ajax 调用发布数据)。

请给我一个方法。 提前致谢。

最佳答案

有数以千计的插件可供文件上传使用,您也可以使用基于 HTML5 的解决方案。但是由于您没有指定您使用的是哪个插件,所以我刚刚为您提供了上传和保存文件的完整方法。

<form id="myForm" action="@Url.Action('files', 'controllername')" enctype="multipart/form-data">

    <input type="file" id="fileUpload" name="fileUpload" />
</form>

$("#fileUpload").change(function() {
    $("#myForm").submit();  // meaning whenever you select the file and press OK/Open, form will be submitted.
});


public ActionResult files()
{
     if (Request.Files.Count > 0)
     {
         var file = Request.Files[0];

         if (file != null && file.ContentLength > 0)
         {
            var fileName = Path.GetFileName(file.FileName);
            var path = Path.Combine(Server.MapPath("~/Images/"), fileName);
            file.SaveAs(path);
         }
     }

     return RedirectToAction("Index");
 }

如果您在此解决方案中遇到任何问题,请告诉我。

关于c# - 使用 Ajax 发布的 MVC 中的文件附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33242814/

相关文章:

javascript - 如何在jquery中获取所选项目的类别?

asp.net-mvc - 使用操作筛选器属性的ASP.Net MVC错误处理

javascript - 如何将类型对象的 json 数组传递给 MVC Controller 类

c# - MVC 3 如何让用户查看警告/免责声明屏幕

c# - 如何将 json 反序列化为 PropertyType?

c# - 对象是类,因为枚举是...?

php - 执行 php 文件 onClick

javascript - 如何替换 url 而不是在此代码中添加/推送

c# - 使用线程安全更新单例的属性

c# - 数据库连接导致 CrystalReports ReportDocument 内存泄漏