.Net Core 上传图片
/// <summary>
/// 图片上传并存入数据库
/// </summary>
/// <returns></returns>
public JsonResult InsertPicture()
{
var uploadfile = Request.Form.Files[];
var now = DateTime.Now;
var webRootPath = _environment.WebRootPath;
var filePath = string.Format("/Uploads/Images/{0}/{1}/{2}/", now.ToString("yyyy"), now.ToString("yyyyMM"), now.ToString("yyyyMMdd")); if (!Directory.Exists(webRootPath + filePath))
{
Directory.CreateDirectory(webRootPath + filePath);
} if (uploadfile != null)
{
//文件后缀
var fileExtension = Path.GetExtension(uploadfile.FileName); //判断后缀是否是图片
const string fileFilt = ".gif|.jpg|.php|.jsp|.jpeg|.png|......";
if (fileExtension == null)
{
return new JsonResult(new JsonResultModel { isSucceed = false, resultMsg = "上传的文件没有后缀" });
}
if (fileFilt.IndexOf(fileExtension.ToLower(), StringComparison.Ordinal) <= -)
{
return new JsonResult(new JsonResultModel { isSucceed = false, resultMsg = "上传的文件不是图片" });
} //判断文件大小
long length = uploadfile.Length;
if (length > **) //2M
{
return new JsonResult(new JsonResultModel { isSucceed = false, resultMsg = "上传的文件不能大于2M" });
} var strDateTime = DateTime.Now.ToString("yyMMddhhmmssfff"); //取得时间字符串
var strRan = Convert.ToString(new Random().Next(, )); //生成三位随机数
var saveName = strDateTime + strRan + fileExtension; //插入图片数据
var picture = new Picture
{
MimeType = uploadfile.ContentType,
AltAttribute = "",
FilePath = filePath + saveName,
CreatedDateTime = DateTime.Now
};
using (FileStream fs = System.IO.File.Create(webRootPath + filePath + saveName))
{
uploadfile.CopyTo(fs);
fs.Flush();
}
_pictureService.Insert(picture);
return new JsonResult(new {isSuccess = true, returnMsg = "上传成功", imgId = picture.Id, imgUrl = picture.FilePath});
}
return new JsonResult(new JsonResultModel { isSucceed = false, resultMsg = "上传失败" });
}
最重要的一行代码就是 uploadfile.CopyTo(fs);
在.Net Core 中没有SaveAs
.Net Core 上传图片的更多相关文章
- .NET压缩图片保存 .NET CORE WebApi Post跨域提交 C# Debug和release判断用法 tofixed方法 四舍五入 (function($){})(jQuery); 使用VUE+iView+.Net Core上传图片
.NET压缩图片保存 需求: 需要将用户后买的图片批量下载打包压缩,并且分不同的文件夹(因:购买了多个用户的图片情况) 文章中用到了一个第三方的类库,Nuget下载 SharpZipLib 目前用 ...
- 使用VUE+iView+.Net Core上传图片
我们直接进入主题,使用VS2017开发工具 首先要创建一个WebApi项目,创建完之后,在wwwroot文件下,创建一个文件夹 名字可以随意起 我这里呢就叫做Upload了 ok ! 然后我们再创建 ...
- 使用.Net Core+IView+Vue集成上传图片功能
最近的项目里有上传图片的功能,当然这个功能在项目里是必须要有的,那么目前这个项目是使用完全的前后端分离,在选择文件上传的组件中还是选择了全面支持Vue的IView,任何上传图片都是通过HTTP请求,服 ...
- .net core 2.0 webuploader上传图片
引入文件 <link href="~/Scripts/webuploader-0.1.5/webuploader.css" rel="stylesheet" ...
- asp.net core 通过ajax上传图片及wangEditor图片上传
asp.net core 通过ajax上传图片 .net core前端代码,因为是通过ajax调用,首先要保证ajax能调用后台代码,具体参见上一篇.net core 使用ajax调用后台代码. 前端 ...
- 中小研发团队架构实践之生产环境诊断工具WinDbg 三分钟学会.NET微服务之Polly 使用.Net Core+IView+Vue集成上传图片功能 Fiddler原理~知多少? ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一) C#程序中设置全局代理(Global Proxy) WCF 4.0 使用说明 如何在IIS上发布,并能正常访问
中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具 ...
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
sql server 关于表中只增标识问题 由于我们系统时间用的过长,数据量大,设计是采用自增ID 我们插入数据的时候把ID也写进去,我们可以采用 关闭和开启自增标识 没有关闭的时候 ,提示一下错 ...
- .Net Core WebApi上传图片的两种方式
我这边主要是为了上传图片,话不多说,上代码. 方式一:通过Form表单上传 后端: /// <summary> /// 上传图片,通过Form表单提交 /// </summary&g ...
- 在ASP.NET Core中给上传图片功能添加水印
在传统的.NET框架中,我们给图片添加水印有的是通过HttpModules或者是HttpHandler,然后可以通过以下代码添加水印: var image = new WebImage(imageBy ...
随机推荐
- 实现自己的JDBC框架
使用JDBC操作数据库时,dao层的增删改查有很多重复的代码,比如下面的 public int getTotal() { Connection conn = null;//通用代码 PreparedS ...
- Swift原理
背景与概览 Swift 最初是由 Rackspace 公司开发的高可用分布式对象存储服务,并于 2010 年贡献给 OpenStack 开源社区作为其最初的核心子项目之一,为其 Nova 子项目提供虚 ...
- 《C++反汇编与逆向分析技术揭秘》——观察各种表达式的求值过程
---恢复内容开始--- 加法: 示例: 常量相加,则在编译期间就计算出两个常量相加后的结果,直接将这个结果参与运算,减少了运行期的计算.当有变量参与运算时,会先取出内存中的数据,放入通用寄存器中,再 ...
- 简易js网页实时时钟日历
<script language="javascript"> function timeF(i){ if(i<10){ i="0"+i; } ...
- PQ分区魔术师v9.0 中文版
软件名称: pqmagic 硬盘分区大师9.0中文绿色版 软件大小:5.80MB 软件语言:简体中文 软件类别:磁盘工具 软件授权:免费软件 更新时间:2013-10-082013-10-08 09: ...
- php笔记(四)PHP类和对象之对象继承
建立一个Truck类,扩展Car类,并覆盖speedUp方法,使速度累加50 <?php class Car { public $speed = 0; //汽车的起始速度是0 public fu ...
- ansible role 执行顺序
the dependencies of the 'openshift-master' role.- docker- openshif_common - os_firewall - openshi ...
- CentOS 安装以及配置Apache php mysql
准备篇: 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables -A INPUT -m state –state NEW -m tcp -p tcp –dp ...
- 安装PHP
'./configure' '--prefix=/usr/local/php5.6.21' '--with-config-file-path=/usr/local/php5.6.21/etc' '-- ...
- svn中“clean up”死循环问题解决办法
SVN在使用update命令时,提示使用"clean up "命令,在使用clean up命令时报错"Previous operation has not finishe ...