
[英]asp.net MVC upload file name is System.Web.HttpPostedFileWrapper
[英]Name photos when uploading photos in the database “ System.Web.HttpPostedFileWrapper ”
当我在asp mvc 5中上传图片保存在数据库中时,用此名称保存
System.Web.HttpPostedFileWrapper
有什么问题 ? 我该如何解决?
public async Task<ActionResult> Register(RegisterViewModel model, HttpPostedFileBase UserPhoto)
{
if (ModelState.IsValid)
{
model.DateRegister = DateTime.Now;
var user = new ApplicationUser { UserName = model.UserName, Name = model.Name, Family = model.Family,
PhoneNumber = model.PhoneNumber, Gender = model.Gender, BirthDay = model.BirthDay, DateRegister = model.DateRegister,
IsActive = false, UserPhoto = model.UserPhoto, Email = model.Email };
if (UserPhoto != null)
{
UserPhoto = Request.Files[0];
var ext = System.IO.Path.GetExtension(UserPhoto.FileName);
if (ext == ".jpeg" || ext == ".jpg" || ext == ".png")
{
string filename = model.PhoneNumber + ext;
UserPhoto.SaveAs(Server.MapPath(@"~/Image/" + filename));
model.UserPhoto = filename;
}
}
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
return RedirectToAction("Index", "Home");
}
AddErrors(result);
}
return View(model);
}
。
<div class="form-group">
@Html.LabelFor(m => m.UserPhoto, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
<input type="file" name="UserPhoto" id="fileUpload" />
</div>
</div>
/ ******************* ****************************************** /
首次设置文件名时,就是在设置model
。 但是,当您稍后创建用户时,您正在使用user
。 除了将model.UserPhoto
作为视图返回之外,您什么也不做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.