您的位置:首页 >ASP.NET MVC+EntityFramework图片头像上传功能实现
发布于2026-04-21 阅读(0)
扫一扫,手机访问


要搞定头像上传,前端的表单设计是关键第一步。下面这段代码,就清晰地区分了文件选择和最终保存的路径。
@Html.LabelFor(model => model.img, “头像:”, htmlAttributes: new { @class = “control-label col-md-2” })
表单有了,真正的重头戏在用户选择文件后的处理上。来看看支撑上传功能的Ja vaScript代码。
前端把文件流准备好了,后端控制器就需要稳稳接住它。这个上传方法涵盖了验证、存储和反馈的全流程。
//图片上传
[HttpPost]
public ActionResult file(HttpPostedFileBase pic)
{
try
{
if (pic != null)
{
if (pic.ContentLength == 0)
{
return Content(“209”); //获取上传的图片
}
else
{
//判断文件的后缀名,是否符合条件
string backFix = Path.GetExtension(pic.FileName);
if (backFix != “.gif” && backFix != “.png” && backFix != “.jpg” && backFix != “.jpeg”)
{
return Content(“210”); //格式不对
}
string fileName = DateTime.Now.ToString(“MMddHHmmss”) + backFix;
string strPath = Server.MapPath(“~/Content/pic/” + fileName);
pic.Sa veAs(strPath);
//返回路径
return Content(“/Content/pic/” + fileName);
}
}
else
{
return Content(“300”); //图片不能为空
}
}
catch (Exception )
{
return Content(“400”); //上传失败
}
}
文件保存到服务器后,我们并不是存原始文件名,而是通过时间戳重命名,防止覆盖。最终,数据库里存的就是这个相对路径,如下图所示。

数据存好了,最后一步就是在界面上完美地呈现出来。在列表页展示头像,本质上就是将存储的路径转换为可访问的图片标签。

从文件选择、前端校验、异步上传、后端处理到数据库存储和最终页面展示,这一套完整流程走下来,就是一个健壮的头像上传功能的核心实现。希望以上的梳理能给你带来清晰的参考。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9