最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

asp.net core實(shí)現(xiàn)文件上傳功能

來源:懂視網(wǎng) 責(zé)編:小OO 時(shí)間:2020-11-27 22:37:22
文檔

asp.net core實(shí)現(xiàn)文件上傳功能

本文實(shí)例為大家分享了單文件上傳、多文件上傳的功能,供大家參考,具體內(nèi)容如下:單文件上傳;上傳文件在Web應(yīng)用程序中是一個(gè)常見的功能。在asp.net core中上傳文件并保存在服務(wù)器上,是很容易的。下面就來演示一下怎么樣在 ASP.NET Core項(xiàng)目中進(jìn)行文件上傳。首先,創(chuàng)建一個(gè) asp.net core 項(xiàng)目,然后在Controller文件件添加一個(gè)HomeController,然后在 Views 文件夾的 Home 文件夾里添加一個(gè) New.cshtml 視圖文件。如下圖: 。添加一個(gè) UserViewModel.cs在 Model 文件夾中 .代碼如下:
推薦度:
導(dǎo)讀本文實(shí)例為大家分享了單文件上傳、多文件上傳的功能,供大家參考,具體內(nèi)容如下:單文件上傳;上傳文件在Web應(yīng)用程序中是一個(gè)常見的功能。在asp.net core中上傳文件并保存在服務(wù)器上,是很容易的。下面就來演示一下怎么樣在 ASP.NET Core項(xiàng)目中進(jìn)行文件上傳。首先,創(chuàng)建一個(gè) asp.net core 項(xiàng)目,然后在Controller文件件添加一個(gè)HomeController,然后在 Views 文件夾的 Home 文件夾里添加一個(gè) New.cshtml 視圖文件。如下圖: 。添加一個(gè) UserViewModel.cs在 Model 文件夾中 .代碼如下:

本文實(shí)例為大家分享了單文件上傳、多文件上傳的功能,供大家參考,具體內(nèi)容如下

單文件上傳
 上傳文件在Web應(yīng)用程序中是一個(gè)常見的功能。在asp.net core中上傳文件并保存在服務(wù)器上,是很容易的。下面就來演示一下怎么樣在 ASP.NET Core項(xiàng)目中進(jìn)行文件上傳。
 首先,創(chuàng)建一個(gè) asp.net core 項(xiàng)目,然后在Controller文件件添加一個(gè)HomeController,然后在 Views 文件夾的 Home 文件夾里添加一個(gè) New.cshtml 視圖文件。如下圖: 

添加一個(gè) UserViewModel.cs在 Model 文件夾中 , 代碼如下:

 public class UserViewModel
{
 [Required]
 [Display(Name = "姓名")]
 public string Name { get; set; }

 [Required]
 [Display(Name = "身份證")]
 [RegularExpression(@"^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$", ErrorMessage = "身份證號(hào)不合法")]
 public string IdNum { get; set; }

 public string IdCardImgName { get; set; }

 [Required]
 [Display(Name = "身份證附件")]
 [FileExtensions(Extensions = ".jpg,.png", ErrorMessage = "圖片格式錯(cuò)誤")]
 public IFormFile IdCardImg { get; set; }
} 

然后添加一個(gè) New.cshtml 視圖文件在 Views 文件夾中:

 @model UserViewModel

<form asp-controller="Home" role="form" asp-action="New" enctype="multipart/form-data" method="post">
 <div class="form-group">
 <label asp-for="Name"></label>
 <input type="text" class="form-control" asp-for="Name" />
 </div>
 <div class="form-group">
 <label asp-for="IdNum"></label>
 <input type="text" class="form-control" asp-for="IdNum" />
 </div>
 <div class="form-group">
 <label asp-for="IdCardImg"></label>
 <input type="file" asp-for="IdCardImg" />
 <p class="help-block">上傳。</p>
 </div>
 <button type="submit" class="btn btn-default">提交</button>
</form> 

在 HomeController 中,添加頁面對應(yīng)的 Action 方法:

 [HttpPost]
public IActionResult New([FromServices]IHostingEnvironment env, [FromServices]AppDbContext dbContext, UserViewModel user) {
 var fileName = Path.Combine("upload", DateTime.Now.ToString("MMddHHmmss") + ".jpg");
 using (var stream = new FileStream(Path.Combine(env.WebRootPath, fileName), FileMode.CreateNew)) {
 user.IdCardImg.CopyTo(stream);
 }

 var users = dbContext.Set<User>();
 var dbUser = new User() {
 Name = user.Name,
 IdCardNum = user.IdNum,
 IdCardImgName = fileName
 };
 users.Add(dbUser);
 dbContext.SaveChanges();

 return RedirectToAction(nameof(Index));
} 

運(yùn)行程序,查看表單: 


多文件上傳

多文件上傳和單文件上傳類似,表單的 ViewModel 使用 ICollection<IFromFile> ,然后表單的<input type="file" asp-for="IdCardImg" mulpitle /> 添加上mulpitle就可以了(只支持 H5)。 

示例源碼
 注:示例數(shù)據(jù)存儲(chǔ)使用的 Sqlite ,Code First方式生成數(shù)據(jù)庫。
 示例代碼已經(jīng)上傳至 github: https://github.com/yuleyule66/AspNetCoreFileUpload

本文地址:http://www.cnblogs.com/savorboard/p/5599563.html
 作者博客:Savorboard

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

asp.net core實(shí)現(xiàn)文件上傳功能

本文實(shí)例為大家分享了單文件上傳、多文件上傳的功能,供大家參考,具體內(nèi)容如下:單文件上傳;上傳文件在Web應(yīng)用程序中是一個(gè)常見的功能。在asp.net core中上傳文件并保存在服務(wù)器上,是很容易的。下面就來演示一下怎么樣在 ASP.NET Core項(xiàng)目中進(jìn)行文件上傳。首先,創(chuàng)建一個(gè) asp.net core 項(xiàng)目,然后在Controller文件件添加一個(gè)HomeController,然后在 Views 文件夾的 Home 文件夾里添加一個(gè) New.cshtml 視圖文件。如下圖: 。添加一個(gè) UserViewModel.cs在 Model 文件夾中 .代碼如下:
推薦度:
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top