Asp.Net Core WebApi 和Asp.Net WebApi上传文件
public class UpLoadController : ControllerBase
{
private readonly IHostingEnvironment _hostingEnvironment; public UpLoadController(IHostingEnvironment hostingEnvironment)
{
_hostingEnvironment = hostingEnvironment;
}
[HttpPost]
public async Task<string> Post([FromForm] IFormCollection formCollection)
{
string result = "";
string webRootPath = _hostingEnvironment.WebRootPath;
string contentRootPath = _hostingEnvironment.ContentRootPath; FormFileCollection filelist = (FormFileCollection)formCollection.Files; foreach (IFormFile file in filelist)
{
String Tpath = "/" + DateTime.Now.ToString("yyyy-MM-dd") + "/";
string name = file.FileName;
string FileName = DateTime.Now.ToString("yyyyMMddHHmmssfff");
string FilePath = webRootPath + Tpath; string type = System.IO.Path.GetExtension(name);
DirectoryInfo di = new DirectoryInfo(FilePath); if (!di.Exists) { di.Create(); } using (FileStream fs = System.IO.File.Create(FilePath + FileName + type))
{
// 复制文件
file.CopyTo(fs);
// 清空缓冲区数据
fs.Flush();
}
result = "";
}
return result;
}
}
.NetCore WebApi
[HttpPost]
public async Task<string> Post()
{
string result = "";
HttpFileCollection filelist = HttpContext.Current.Request.Files;
if (filelist != null && filelist.Count > )
{
for (int i = ; i < filelist.Count; i++)
{
HttpPostedFile file = filelist[i];
String Tpath = "/" + DateTime.Now.ToString("yyyy-MM-dd") + "/";
string filename = file.FileName;
string FileName = DateTime.Now.ToString("yyyyMMddHHmmssfff");
string FilePath = HttpContext.Current.Server.MapPath("~/" + Tpath);
string type = System.IO.Path.GetExtension(filename);
DirectoryInfo di = new DirectoryInfo(FilePath);
if (!di.Exists) { di.Create(); }
try
{
file.SaveAs(FilePath + FileName+type);
result = "";
}
catch (Exception ex)
{
result = "上传文件写入失败:" + ex.Message;
}
}
}
else
{
result = "上传的文件信息不存在!";
}
return result;
}
Asp.Net WebApi
前端插件:https://blog.csdn.net/u010075697/article/details/72771594
Asp.Net Core WebApi 和Asp.Net WebApi上传文件的更多相关文章
- ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64)
ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64) 七牛图片上传 SDK(.NET 版本):https://developer.qiniu.com/kodo/sdk/ ...
- ASP.NET 5探险(2):上传文件
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:在ASP.NET 5(MVC 6)中处理上传文件的方式和之前有所不同. 在MVC 5之 ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- ASP.Net上传文件
在做Web项目时,上传文件是经常会碰到的需求.ASP.Net的WebForm开发模式中,封装了FileUpload控件,可以方便的进行文件上传操作.但有时,你可能不希望使用ASP.Net中的服务器控件 ...
- WPF中的常用布局 栈的实现 一个关于素数的神奇性质 C# defualt关键字默认值用法 接口通俗理解 C# Json序列化和反序列化 ASP.NET CORE系列【五】webapi整理以及RESTful风格化
WPF中的常用布局 一 写在开头1.1 写在开头微软是一家伟大的公司.评价一门技术的好坏得看具体的需求,没有哪门技术是面面俱到地好,应该抛弃对微软和微软的技术的偏见. 1.2 本文内容本文主要内容 ...
- Asp.Net Core 轻松学系列-3项目目录和文件作用介绍
目录 前言 结语 前言 上一章介绍了 Asp.Net Core 的前世今生,并创建了一个控制台项目编译并运行成功,本章的内容介绍 .NETCore 的各种常用命令.Asp.Net Core M ...
- .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息
在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...
- ASP.NET Core: 全新的ASP.NET !
背景 最新版本的 ASP.NET 叫做 ASP.NET Core (也被称为 ASP.NET 5) 它颠覆了过去的 ASP.NET. 什么是 ASP.NET Core? ASP.NET Core ...
- 改造kindeditor支持asp.net core mvc上传文件
kindtor默认使用的上传方法是使用目录下面的一般处理程序upload_json.ashx,暂时还不支持asp.net core下的文件上传,下面放出的自定义处理上传文件的接口方法. 自定义接收上传 ...
随机推荐
- TopCoder Div2
代码附在文末. 多组数据一定要初始化啊啊啊 贪心要[大胆]猜想,小心证明 A 题目翻译 题目描述 有两个正整数A和B,两个操作+3或者-2. 问,至少多少次操作可以让A变到B 输入 多组数据,第一行一 ...
- mysql Navicat 导入导出
1.导出数据库: 打开Navicat ,在我们要导出的数据库上右击鼠标,然后弹出的快捷菜单上点击“转储SQL 文件”,(有些版本, 会有子菜单,在再次弹出的子菜单项中选择第一个“数据跟结构”) ...
- Linux系统(和mac系统)chmod修改权限总结
在 Mac 系统的终端上修改文件权限使用的是 Linux 中的 chmod 命令. chmod 用户+操作+权限+文件 用户部分:使用字母 u 表示文件拥有者(user),g 表示拥有者所在群组(gr ...
- 剑指offer——python【第60题】把二叉树打印成多行
题目描述 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行.#类似于二维列表[[1,2],[4,5]] 解题思路 其实这倒题和其他类似的题有所区别,这里是分层打印,把每层的节点值放在同一 ...
- 利用野草weedcmsuseragent盲注漏洞拿shell
野草网站管理系统(WEEDCMS)是由野草独立基于PHP+MYSQL开发的内容管理系统.面向企业.个人.小门户等中小规模网站使用而开发的.采用国际上比较流行Smarty引擎和敏捷的JQuery JS框 ...
- RESTful levels 和 HATEOAS
RESTful REST(英文:Representational State Transfer,简称REST)描述了一个架构样式的网络系统,比如 web 应用程序.它首次出现在 2000 年 Roy ...
- linux centos7磁盘格式化挂载之parted
parted /dev/xvde mklabel gpt //划分为gpt分区 mkpart logical //创建逻辑分区 ext4 //开始大小 537G //结束大小 quit blkid l ...
- Freemaker Replace函数的正则表达式运用
replace(param1,param2,param3) param1 正则表达式:param2 将匹配的字符替换成指定字符:param3 模式 param3 参数如下 模式 i r m ...
- 运维面试题之linux基础
吐槽: 某某命令是什么,某个配置文件的路径,呃....你难道不知道有--help和Tab这种东西吗? linux系统的启动过程是怎么样的? grub引导>加载内核>启动init进程依据in ...
- patA1059 Prime Factors
这个问题叫做质因子分解,花了大概两个小时写对了.这道题细节挺多的,书上提到了几点,一个是n=1的话需要特判.有一个很容易错的点就是n一开始要先用一个变量保存起来,不保存的话后面有点麻烦,所以建议还是先 ...