
创建视图:
@model imageuploader.Models.Employee<form method="post" enctype="multipart/form-data" asp-controller="Employee" asp-action="Create"><div > <div > <input asp-for="Firstname" /> </div></div><div > <div > <input asp-for="Lastname" Class="form-control" /> </div></div><div > <div > <input asp-for="Imagename" type="file" Class="form-control" /> </div></div><div > <div > <input type="submit" value="Create" /> </div></div>
型号:
public class Employee{ [Key] public int ID { get; set; } [required] public string Firstname { get; set; } [required] public string Lastname { get; set; } public string Imagename { get; set; }} 调节器
private Readonly RegisterDBContext _context; private Readonly IHostingEnvironment _appEnvironment; public EmployeeController(RegisterDBContext context,IHostingEnvironment appEnvironment) { _context = context; _appEnvironment = appEnvironment; } [httpPost] [ValIDateAntiForgeryToken] public async Task<IActionResult> Create(Employee emp) { if (ModelState.IsValID) { var files = httpContext.Request.Form.files; foreach (var Image in files) { if (Image != null && Image.Length > 0) { var file = Image; //There is an error here var uploads = Path.Combine(_appEnvironment.WebrootPath,"uploads\img"); if (file.Length > 0) { var filename = GuID.NewGuID().ToString().Replace("-","") + Path.GetExtension(file.filename); using (var fileStream = new fileStream(Path.Combine(uploads,filename),fileMode.Create)) { await file.copyToAsync(fileStream); emp.BookPic = filename; } } } } _context.Add(emp); await _context.SaveChangesAsync(); return RedirectToAction("Index"); } else { var errors = ModelState.Values.SelectMany(v => v.Errors); } return VIEw(emp); } 当我点击提交按钮时出现错误(标记错误行),如何在指定路径上传图像或文件?
错误:
NullReferenceException: Object reference not set to an instance of an object.imageuploader.Controllers.EmployeeController+<Create>d__2.MoveNext() in EmployeeController.cs var uploads = Path.Combine(_appEnvironmen.WebrootPath,"uploads\img\");
如何在指定路径中正确上传图像?
解决方法 我解决了它.我明白我最初很糟糕_appEnvironment
在构造函数中.
通过重复编辑,所有相关代码目前都是正确的.
谢谢@Shyju用户.
总结以上是内存溢出为你收集整理的asp.net-mvc – 在Asp.Net Core上传图片?全部内容,希望文章能够帮你解决asp.net-mvc – 在Asp.Net Core上传图片?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)