首先传递的数据格式大概如下:

然后就可以在后端获取数据了:直接上代码了哈:

[HttpPost]        ///分别获取 data数据和调用图片上传方法
public async Task<JsonResult> UploadDefault()
{
var data =Request.Form["data"];
var dataPosition=GetSortModel(data);  //json反序列化为 list型
BootstrapFileResult res = await UploadCommonAsync(); //图片上传并返回  图片id
var picid = res.ImgId;
PicandPoint user = new PicandPoint();
user.LevelId = dataPosition[0].id;
user.PositionX = dataPosition[0].positionX;
user.PositionY = dataPosition[0].positionY;
user.FotoId = picid;
JsonResult result = await CreatePoint(user);
return result;
}

[HttpPost]     ////将文件保存到指定路径,然后在存到数据库

public async Task<BootstrapFileResult> UploadCommonAsync()
{
////var data = Request.Form["data"];
var files = Request.Form.Files;
var baseDir = _options.ImgDir;
var res = new BootstrapFileResult();
var now = DateTime.Now;
if (!Directory.Exists(baseDir))
{
Directory.CreateDirectory(baseDir);
}
for (int i = 0; i < files.Count; ++i)
{
var newnamere = "";
var file = files[i];

var imgid = 0;
try
{
var orgName = file.FileName;
var newName = GetRandomFileName(orgName);
newnamere = newName;
imgid = await _indexer.StoreImageRecord(orgName, newnamere);

var filePath = baseDir + "/" + newName;
using (var stream = new FileStream(filePath, FileMode.Create))
{
await file.CopyToAsync(stream);  //将图片写到指定文件夹
}
var bitmap = new ImageSharp.Image(file.OpenReadStream());
var width = bitmap.Width;
var height = bitmap.Height;
await _indexer.UpdateImageDataEx(imgid, width, height);
}
catch (Exception e) { continue; }

res.ImgId = imgid;

}

return res;
}

///这个方法是将获取到的 data为stringvalue类型数据转化为list型:

private List<UpPoint> GetSortModel(string sortModel)
{ List<UpPoint> list = new List<UpPoint>();
if (sortModel == null)
{
return list;
}
string array = $"[{sortModel}]";
var deserialized = JsonConvert.DeserializeObject<List<UpPoint>>(array);
return deserialized;
}

.net core 基于multipart/form-data的文件上传,这里以图片上传为例的更多相关文章

  1. Django 基于Ajax & form 简单实现文件上传

    前端实现 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="U ...

  2. input file实现多选,限制文件上传类型,图片上传前预览功能

    限制上传类型 & 多选:① accept 属性只能与 <input type="file" /> 配合使用.它规定能够通过文件上传进行提交的文件类型. ② mu ...

  3. 用html5文件api实现移动端图片上传&预览效果

    想要用h5在移动端实现图片上传&预览效果,首先要了解html5的文件api相关知识(所有api只列举本功能所需): 1.Blob对象  Blob表示原始二进制数据,Html5的file对象就继 ...

  4. 基于 Django的Ajax实现 文件上传

    ---------------------------------------------------------------遇到困难的时候,勇敢一点,找同学朋友帮忙,找导师求助. Ajax Ajax ...

  5. html5 file upload and form data by ajax

    html5 file upload and form data by ajax 最近接了一个小活,在短时间内实现一个活动报名页面,其中遇到了文件上传. 我预期的效果是一次ajax post请求,然后在 ...

  6. Sending forms through JavaScript[form提交 form data]

    https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Sending_forms_through_JavaScript As in the ...

  7. 富文本编辑器 KindEditor 的基本使用 文件上传 图片上传

    富文本编辑器 KindEditor 富文本编辑器,Rich Text Editor , 简称 RTE , 它提供类似于 Microsoft Word 的编辑功能. 常用的富文本编辑器: KindEdi ...

  8. java web图片上传和文件上传

    图片上传和文件上传本质上是一样的,图片本身也是文件.文件上传就是将图片上传到服务器,方式虽然有很多,但底层的实现都是文件的读写操作. 注意事项 1.form表单一定要写属性enctype=" ...

  9. .NET Core Web API使用HttpClient提交文件的二进制流(multipart/form-data内容类型)

    需求背景: 在需要通过服务端请求传递文件二进制文件流数据到相关的服务端保存时,如对接第三方接口很多情况下都会提供一个上传文件的接口,但是当你直接通过前端Ajax的方式将文件流上传到对方提供的接口的时候 ...

随机推荐

  1. 浅谈jquery之on()绑定事件和off()解除绑定事件

    off()函数用于移除元素上绑定的一个或多个事件的事件处理函数. off()函数主要用于解除由on()函数绑定的事件处理函数. 该函数属于jQuery对象(实例). 语法 jQuery 1.7 新增该 ...

  2. 指数循环节&欧拉降幂

    证明:https://www.cnblogs.com/maijing/p/5046628.html 注意使用条件(B的范围) 例题: FZU1759 HDU2837 ZOJ1674 HDU4335

  3. Cocos2d-x移植Android 常见问题处理办法

    1.函数.变量出现"could not be resolved "问题 出现此问题通常是没有找到cocos2d-x声明的头文件.在eclipse将cocos2d的头文件文件夹引入. ...

  4. OpenXml操作Excel

    要使用OpenXml首先要下载最新的Open XML Format SDK 2.0.具体的导入openxml的dll,去网上搜,很多 1.我个人写的XmlHelp类 using System; usi ...

  5. 牛客网多校训练第一场 D - Two Graphs

    链接: https://www.nowcoder.com/acm/contest/139/D 题意: 两个无向简单图都有n(1≤n≤8)个顶点,图G1有m1条边,图G2有m2条边,问G2有多少个子图与 ...

  6. BZOJ4419:[SHOI2013]发微博(乱搞)

    Description 刚开通的SH微博共有n个用户(1..n标号),在短短一个月的时间内,用户们活动频繁,共有m条按时间顺序的记录: ! x   表示用户x发了一条微博: + x y 表示用户x和用 ...

  7. php中文正则匹配

    今天接到一个需求,用户昵称系统需要将昵称输入的字符类型限定为 中文,英文,数字, -,_ 显然这个应该用正则来实现,那么最终的规则是怎么样的呢?示例代码如下: <?php $str = '我爱北 ...

  8. springmvc(2)处理器设配器和映射器

     非注解的处理器 映射器 和 适配器 一.处理器映射器 1.BeanNameUrlHandlerMapping <bean class="org.springframework.web ...

  9. Vue中引入jquery方法 vue-cli webpack 引入jquery

    在vue-cli 生成的工程中引入了jquery(模板用的webpack) 首先在package.json里的dependencies加入"jquery" : "^2.2 ...

  10. 利用SQL模糊匹配来验证字段是否是日期格式

    最近需要验证数据仓库某个字段是否转化成某种日期格式,比如时间戳格式 ‘2016-05-03 23:21:35.0‘, 但是DB2不支持REGEXP_LIKE(匹配)函数,所以需要重新想其他办法. 最后 ...