ASP.NET MVC+EntityFramework图片头像上传

1,先展示一下整体的效果

2,接下来展示用户添加以及上传头像代码、添加用户界面

前端代码如下:

  <div class="form-group">@Html.LabelFor(model => model.img, "头像:", htmlAttributes: new { @class = "control-label col-md-2" })<div class="col-md-10">@*@Html.EditorFor(model => model.img, new { htmlAttributes = new { @class = "form-control" } })*@<input class="width-main input" type="file" datatype="*" id="pic" name="pic" value="" accept="image/*" onchange="upload(event)"><input type="hidden" name="img" id="img" value="" /><div id="showImg"></div></div></div>

 JS代码

<script>//实现异步上传function upload(event) {var imgPath = $("#pic").val();console.log(imgPath);//判断上传文件的后缀名var strExtension = imgPath.substr(imgPath.lastIndexOf('.') + 1);if (strExtension != 'jpg' && strExtension != 'gif' && strExtension != 'png' && strExtension != 'bmp') {alert("请选择图片文件");return;}//实现文件上传操作if (event.target.files[0].type.search('image') !== -1) {//实现文件图片的上传var formData = new FormData($("#myForm")[0]);//用于创建一个文件流对象//formData.append('pic', $("#img")[0]); //添加文件流 (流名称,流)//console.log(formData);$.ajax({url: "/Upload/file",type: "post",cache: false,processData: false,contentType: false,data: formData,success: function (res) {console.log(res);if (res.trim() == "209") {alert("请选择图片!");return;}if (res.trim() == "300") {alert("上传的图片不能为空图片!");return;}if (res.trim() == "400") {alert("上传的图片失败!");return;}//alert("上传成功!");$("#showImg").html("<img src='" + res + "' width='50' height='50' /><p style='color:red;'>上传成功!</p>");//设置上传的图片地址var res = res.trim(); //去除图片的前后空白字符$("#img").val(res);},error: function (res) {alert("上传异常!");}});} else {alert('只支持上传图片');}}</script>

 控制器图片上传的方法

  //图片上传[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.SaveAs(strPath);//返回路径return Content("/Content/pic/" + fileName);}}else{return Content("300"); //图片不能为空}}catch (Exception ){return Content("400"); //上传失败}}

数据库保存的是文件的已经重新命名的路径,数据库保存的图片如下

在列表页面如何具体显示头像呢,代码如下所示:

以上就是头像图片的上传展示,谢谢. 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/284178.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL job 定时任务

目录 介绍 优点&#xff1a; 缺点&#xff1a; 使用场景&#xff1a; 案例 创建表 -- 创建定时任务 每一分钟插入一条数据 执行结果 -- 查询定时任务 ENABLED--启用 DISABLED--禁用 -- 查询定时任务 -- 启用定时任务 ​-- 禁用定时任务 ​-- 删除定时任务 …

竞赛保研 python的搜索引擎系统设计与实现

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; python的搜索引擎系统设计与实现 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;5分创新点&#xff1a;3分 该项目较为新颖&#xff…

案例分享,现代水墨风客餐厨装修。福州中宅装饰,福州装修

近年来&#xff0c;现代水墨风格越来越受到人们的青睐&#xff0c;它独特的韵味和精致的细节让人无法抗拒。今天我想要跟大家分享一下一款经典的水墨风客餐厨装修案例&#xff0c;希望可以给大家在家装方面提供一些灵感和参考。 设计亮点 01. 无主灯悬浮吊顶 这款客餐厨装修案…

系列十一、索引

一、索引 1.1、概述 索引&#xff08;index &#xff09;是帮助 MySQL 高效获取数据的有序数据结构 。在数据之外&#xff0c;数据库系统还维护着满足特定查找算法的数据结构&#xff0c;这些数据结构以某种方式引用&#xff08;指向&#xff09;数据&#xff0c; 这样就可以…

SAP特殊采购类型70简介

前面我们测试了一下特殊采购类型40,我们今天测试一下70, 70采购类的一个主要特征就是执行工厂间的需求传递与库存转移。但是与40采购类相比,70采购类的适用场合相对比较狭窄,而系统操作则相对比较简单。70的采购类使用场景A工厂订单中的组件需要在B工厂进行领料的操作(这个…

图片怎么批量建码?每张图快速单独生码

怎么把同一类型的大量图片快单独生成二维码&#xff1f;当我们需要将大量的图片每张单独生成二维码时&#xff0c;单独去上传图片制作二维码会需要使用大量的时间&#xff0c;效率比较低下&#xff0c;那么批量图片建码该怎么做呢&#xff1f;接下来通过本文给大家讲解一下在线…

【论文阅读笔记】Pre-trained Universal Medical Image Transformer

Luo L, Chen X, Tang B, et al. Pre-trained Universal Medical Image Transformer[J]. arXiv preprint arXiv:2312.07630, 2023.【代码开源】 【论文概述】 本文介绍了一种名为“预训练通用医学图像变换器&#xff08;Pre-trained Universal Medical Image Transformer&…

回归预测 | MATLAB实现IBL-LSSVM【23年新算法】逻辑优化算法优化最小二乘支持向量机的数据回归预测 (多指标,多图)

回归预测 | MATLAB实现IBL-LSSVM【23年新算法】逻辑优化算法优化最小二乘支持向量机的数据回归预测 &#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现IBL-LSSVM【23年新算法】逻辑优化算法优化最小二乘支持向量机的数据回归预测 &#xff08;多指标…

使用案例总结Vlookup函数的30种用法

1 基础用法 =VLOOKUP(A12,B$1:D$8,3,0) 2 批量查找 =VLOOKUP(A11:A13,A2:C8,3,0) 3 模糊查找 =VLOOKUP("*"&D2&"*",A:B,2,0) 4 模糊查找2 =VLOOKUP(D10&"??",A:B,2,0) 5 模糊查找3 =

一个月过软考分享经验之软件测评师

第一次参加软考&#xff0c;九月份报名了软考的软件评测师–主要目前就干这行&#xff0c;所以报的这个&#xff0c;很多程序员开发报的都是软件设计师&#xff0c;其实差别就是在大题&#xff0c;选择题这两者基本差不多。软考含金量一般&#xff0c;但是考证的同时也能系统学…

nacos配置导出

1.查看nacos数据库 mysql -u root -p use nacos show tables; 其中config_info就是存放nacos配置的表&#xff0c;导出该表中的数据就是导出nacos中的配置项 mysqldump -u root -p --single-transaction nacos config_info>config_info.sql 导出后在需要的nacos集群的…

Word的兼容性问题很常见,禁用兼容模式虽步不是最有效的,但可以解决兼容性问题

当你在较新版本的Word应用程序中打开用较旧版本的Word创建的文档时&#xff0c;会出现兼容性问题。错误通常发生在文件名附近&#xff08;兼容模式&#xff09;。兼容性模式问题&#xff08;暂时&#xff09;禁用Word功能&#xff0c;从而限制使用较新版本Word的用户编辑文档。…