当前位置: 首页 > 图文教程 > 网络编程 > 网页编辑器 > FCKeditor ASP.NET 上传附件研究

网页编辑器
让 FCKeditor 支持多用户Web环境(以PHP为例)
Ewebeditor 文件上传问题
PHP网页 Ewebeditor 编辑器嵌入方法
FckEditor 上传图片后图片变小了!问题解决
fckeditor asp版本的文件重命名
FckEditor 中文配置手册
FCKEditor网页编辑器 几点使用心得
FCK 编辑器焦点问题
添加FCKeditor插件需要注意的地方
javascript 获取FCKeditor内容
eWebEditor 上传文件提示格式不正确的解决方法
xhEditor的异步载入实现代码
FCKeditor 编辑器插入代码功能实现步骤
配置fckeditor 实现图片的上传
FCKeditor提供了一个完整的JavaScript API
fckediter javascript事件函数代码
ASP FCKeditor在线编辑器使用方法
ASP下使用FCKeditor在线编辑器的方法
ASP.NET中FCKEDITOR在线编辑器的用法
php下FCKeditor2.6.5网页编辑器的使用方法

网页编辑器 中的 FCKeditor ASP.NET 上传附件研究


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 206 ::
收藏到网摘: n/a

FCKeditor很好用,而且是开源软件。最近研究了一下自带的上传功能,对源代码作了一点修改,也算是依照开源软件的要求,介绍一下。 1,安装
安装就不多说了,除了一般的那个压缩包外,ASP.NET版的FCKeditor另有一个FCKeditor.Net下载包,里面有一个Visual Studio的Solution,bin/Release里有一个FredCK.FCKeditorV2.dll文件,可以直接COPY到你的ASP.NET项目的bin文件夹里。
2,附件上传流程
FCKeditor通过在编辑界面点击Link或图片按钮打开一个模态对话框,在里面选择本地文件后上传。
这个对话框是Fckeditor/editor/dialog/fck_image.html或fck_link.html。
对话框的js代码在fck_image和fck_link目录里,它们还会调用common/fck_dialog_common.js
上面这些都是客户端的事。
在Fckeditor/editor/filemanager/upload/aspx下有一个孤独的upload.aspx,里面除了注释外只有一句话,它的code behind 的代码是在前面那个ASP.NET下载包里的Uploader.cs,已经被编译进FredCK.FCKeditorV2.dll了。
3.修改Uploader.cs
3.1 把upload.aspx上唯一的那行代码修改一下。
原版:< %@ page autoeventwireup="false" inherits="FredCK.FCKeditorV2.Uploader" language="c#" % >
修改为:< % @ page autoeventwireup="false" codefile="upload.aspx.cs" inherits="FCKUpload" language="c#" % >
这样,upload.aspx就不再去FredCK.FCKeditorV2.dll寻找自己的behind code,而是在自己身边找.
3.2 从FCKeditor.Net压缩包里提取出Uploader.cs,放在自己的ASP.NET项目的FCKeditor目录里和upload.aspx放在一起。这样,Uploader.cs就成了你的项目中的一部分,完全在你的控制之下。
打开Uploader.cs,里面代码并不复杂。
首先,你应该加上自己的身份验证。
然后,HttpPostedFile oFile = Request.Files["NewFile"];,获得上传文件,FCKeditor的客户应当是一次只上传一个,不必考虑多个同时上传的情况。
获得文件大小,oFile.ContentLength。
获得文件名,HttpContext.Current.Request.Files[0].FileName,
要检查后缀的话,System.IO.Path.GetExtension(FileName);
保存起来,oFile.SaveAs(sFilePath);文件名和路径完全在你的控制中。
最后通过SendResults把错误代码发回去,如果上传成功,可以发0,然后是文件名和文件URL。
3.3客户端
如果有兴趣,可以研究修改一下客户端的那些JS。
4.部署
解压缩FCKeditor.Net压缩包,打开里面的Solution,删掉Uploader.cs,重新编译FredCK.FCKeditorV2.dll,新的dll会小一点,在我这儿是从36K变成32K。(注意要编译成Release版)。
最后用新的dll替换自己的项目里的老的dll。