博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net core集成CKEditor实现图片上传功能
阅读量:4036 次
发布时间:2019-05-24

本文共 2781 字,大约阅读时间需要 9 分钟。

背景

本文为大家分享了asp.net core 如何集成CKEditor ,并实现图片上传功能的具体方法,供大家参考,具体内容如下。

准备工作

1.visual studio 2019 开发环境

2.net core 2.0 及以上版本

实现方法

1、新建asp.net core web项目

2、下载CKEditor

这里我们新建了一个系统自带的样本项目,去 CKEditor官网下载一个版本,解压后拷贝大wwwroot中

3、增加图片上传控制器

@using CompanyName.ProjectName.Web.Host.Web.Model@model demock@{    ViewData["title"] = "富文本框";    Layout = "_SimpleTable";}@p headers{    @**@}

富文本编辑器

内容 @Html.EditorFor(model => model.rules) @**@

@p scripts{ }
///         /// 富文本框  上传图片        ///         /// 
[HttpPost] [IgnoreAuthorize] public IActionResult Ckupload() { uploadfile user = new uploadfile(); var files = Request.Form.Files; if (files == null || files.Count == 0) ViewBag.cc = "no file"; user.ShareImg = files[0]; var contentRoot = Directory.GetCurrentDirectory(); var webRoot = Path.Combine(contentRoot, "wwwroot"); var parsedContentDisposition = ContentDispositionHeaderValue.Parse(user.ShareImg.ContentDisposition); var originalName = parsedContentDisposition.FileName.ToString().Replace("\"", ""); var ext = Path.GetExtension(Path.Combine(webRoot, originalName)); // if (ext != ".jpg") // return Json(new { jsonrpc = "2.0", error = new { code = 101, message = "文件格式错误" }, id = "id" }); string gid = Guid.NewGuid().ToString(); var fileName = Path.Combine("upload", gid + ext); var fileName2 = "upload/" + gid + ext; using (var stream = new FileStream(Path.Combine(webRoot, fileName), FileMode.CreateNew)) { user.ShareImg.CopyTo(stream); } string output = @""; string url = "http://" + Request.Host.Value; output = string.Format(output, Request.Query["CKEditorFuncNum"], url + "/" + fileName2); ViewBag.cc = output; return View(); }

4、增加图片上传控制器注意返回是一个json对象,因此建了一个

      简单的对象返回。

运行效果

源码地址

https://gitee.com/conanOpenSource_admin/CompanyName.ProjectName

转载地址:http://tfudi.baihongyu.com/

你可能感兴趣的文章
DNS请求分析
查看>>
docker - 资源限制
查看>>
puppet 配置 1. 服务器, 客户端配置说明
查看>>
puppet 配置 2 模块
查看>>
puppet 配置 3. 资源
查看>>
打造自己的 DockerImage
查看>>
rhel7.2 优化技巧
查看>>
megacli 划分, 删除 raid 方法备忘
查看>>
ceph - crush map 与 pool
查看>>
openstack 管理二十二 - cinder 连接多个存储 backend
查看>>
puppet 配置 3.1 管理 sysct.conf
查看>>
puppet 配置 3.2 管理 hosts
查看>>
puppet 配置 - 3.3 rpm 管理
查看>>
puppet 配置 3.4 文件管理与自定义模块
查看>>
puppet 配置 3.5 参数
查看>>
puppet 配置 4 条件语法
查看>>
puppet 配置 5 常见例子
查看>>
[备忘] 磁盘空间不足分析
查看>>
ceph - 索引
查看>>
ceph - pg 常见状态
查看>>