如何在ASP.Net Core MVC中上传文件
时间: 2024-03-20 15:41:45 浏览: 126
在ASP.Net Core MVC中,可以使用以下步骤上传文件:
1. 在视图中添加一个表单,用于选择文件:
```
<form method="post" enctype="multipart/form-data">
<div class="form-group">
<label for="file">选择文件:</label>
<input type="file" name="file" class="form-control-file" />
</div>
<button type="submit" class="btn btn-primary">上传</button>
</form>
```
2. 在控制器的POST方法中,使用IFormFile接口读取上传的文件:
```
[HttpPost]
public async Task<IActionResult> Upload(IFormFile file)
{
if (file == null || file.Length == 0)
{
return BadRequest("请选择要上传的文件");
}
// 读取文件并保存到服务器
var filePath = Path.Combine(_hostingEnvironment.WebRootPath, "uploads", file.FileName);
using (var stream = new FileStream(filePath, FileMode.Create))
{
await file.CopyToAsync(stream);
}
return Ok("文件上传成功!");
}
```
在上面的代码中,_hostingEnvironment是IHostingEnvironment的实例,用于获取服务器的WebRootPath路径。文件将保存在WebRootPath/uploads目录下。
阅读全文