MVC中上传文件

对于MVC的上传最简单的一种方式:通过form表单来进行获取

控制器中

[HttpPost]
public ContentResult PostDatas()
{
		HttpPostedFileBase file = Request.Files["file"];
            var fileName = file.FileName;
            //var filePhan = Server.MapPath("/FilesInfos/");
            var filePhan = Server.MapPath(string.Format("~/{0}", "FilesInfos"));
            //file.SaveAs(filePhan+ fileName);
            file.SaveAs(Path.Combine(filePhan, fileName));
            return Content(@"<script>alert('上传成功');loction.href='/ExamInfos/GetData'</script>");
}

View

<form action="/ExamInfos/PostDatas" method="post" enctype="multipart/form-data">
            <input id="file" type="file" name="file"/>
            <input type="submit" name="name" value="上传" />
        </form>
在ASP.Net Core MVC中上文件,可以使用以下步骤: 1. 在视图中添加一个表单,包含一个文件输入控件: ```html <form method="post" enctype="multipart/form-data"> <div class="form-group"> <label for="file">选择文件:</label> <input type="file" name="file" id="file" class="form-control-file" /> </div> <button type="submit" class="btn btn-primary">上传</button> </form> ``` 2. 在控制器中添加一个动作方法,用于接收上传文件: ```csharp [HttpPost] public async Task<IActionResult> Upload(IFormFile file) { if (file == null || file.Length == 0) { return BadRequest("请选择文件"); } using (var stream = new MemoryStream()) { await file.CopyToAsync(stream); // 处理上传文件 // ... return Ok("上传成功"); } } ``` 3. 在Startup.cs文件的ConfigureServices方法中添加文件上传服务: ```csharp services.AddMvc(options => { options.Filters.Add(new AutoValidateAntiforgeryTokenAttribute()); // 添加防伪标记,防止跨站攻击 }).AddRazorPagesOptions(options => { options.Conventions.AddPageRoute("/Index", ""); }) .AddNewtonsoftJson(); // 添加NewtonsoftJson,用于序列化JSON services.AddControllersWithViews(); // 添加控制器和视图 services.AddRazorPages(); // 添加Razor页面 services.AddAntiforgery(); // 添加防伪标记,防止跨站攻击 services.Configure<IISServerOptions>(options => { options.AllowSynchronousIO = true; // 允许同步IO }); services.Configure<FormOptions>(options => { options.MultipartBodyLengthLimit = long.MaxValue; // 设置允许上传的最大文件大小 }); ``` 以上就是在ASP.Net Core MVC中上文件的步骤。需要注意的是,要添加防伪标记,防止跨站攻击;要设置允许上传的最大文件大小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值