• Asp.net中使用WEB编辑控件FCKEditor


    先要下载两个文件:
    FCKEditor(JS文件),FCKEdito.net(COM+组件 DLL文件)
    官方网站:
    http://sourceforge.net
    FCKEdiotr的安装与配置:
    把FCKEdiotr文件包直接解压到项目的根目录中,这样根目录下就得到了一个FCKEditor文件夹,里面富含所有FCKeditor的核心文件.
    然后把FCKEditor.Net文件夹内的DLL文件添加到VS工具箱内,这样项目的根目录下就多出一个Bin文件夹,里面就会有所添加的FredCK.FCKeditorV2.dll文件.
    这样,安装就完毕了,下面还要配置一些属性才可以让该控件正常使用:
    FCKeditor在ASP.NET2.0 Web项目中的配置:
    把FCKeditor控件从工具箱上拖动下来,在Default页上你就可以看到这个FCKeditor了,不过这时只能看到一个FCKeditor的站位框,不会看到运行时的效果,在属性(Property)面板上可以设置这个FCKeditor对象的一些基本属性。比较重要的是BasePath属性,如果先前FCKeditor就定在了根目录的FCKeditor下,就设置成~/FCKeditor/,如果是别的目录名就换成相应的值(注意:控件默认值是/FCKeditor/,因为我们使用的是服务器控件设置了runat="server"属性所以要显式的声明BasePath="~/FCKeditor/")。把Default.aspx切换到源代码模式(Source),我们可以看到IDE自动生成的代码:
    <%@ Register Assembly="FredCK.FCKeditorV2" Namespace="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %>
    <FCKeditorV2:FCKeditor ID="FCKeditor1" runat="server"></FCKeditorV2:FCKeditor>
    针对这个示例我配置的代码如下:
    <FCKeditorV2:FCKeditor
        ID="FCKeditor1"
        runat="server"
        AutoDetectLanguage="false"
        DefaultLanguage="zh-cn"
        BasePath="~/FCKeditor/">
    </FCKeditorV2:FCKeditor>
    到了这里,FCKeditor的配置并没有真正的完成,因为它里面的一个强大功能我们还没正确配置:文件上传。
    在Default.aspx的运行模式下,点FCKeditor的“插入/编辑图像”(又或者是Flash)功能,在弹出框点“浏览服务器”,又弹出一个对话框,此时随即出现的是一个错误提示框XML request error: Forbidden(403).
    得到这样的错误有Web开发经验的都知道403应该是读写权限的问题。可是为什么呢?原因在于没有配置UserFiles路径。
    我们在FCKPro根目录下,新建一个空目录Files。连同BasePath的设置通常的做法是这样的:
    打开工程的Web. Config文件,修改appSettings元素,配置如下:
    <appSettings>
    <add key="FCKeditor:BasePath" value="~/FCKeditor/"/>
    <add key="FCKeditor:UserFilesPath" value="/项目文件夹名/Files" />
    </appSettings>
    设置了FCKeditor:BasePath后就不用再每次使用FCKeditor实例时指定BasePath属性了,FCKeditor:UserFilesPath则是制定我们所有上传的文件的所在目录。一定要设置成/FCKPro/Files而不是~/Files,因为FCKeditor使用这个值来返回你上传后的文件的相对路径到客户端,~/Files的形式是ASP.NET在服务可以编译解释的,但是在客户端的静态就不懂这是什么了。如果使用~/Files后,那么所有上传文件的返回路径都是~/Files形式的,你就会得到这样的链接
    http://~/Files/Image/logo.gif这样的链接解果就是路径为找到。所以才要我们上述那样设置,这是在开发阶段,如果在工程完成后发布时请记住把/FCKPro/Files改成/Files,因为开发阶段VS2005在运行项目时的URL是http://localhost/项目名称/的形式,发布后在Server上建立站点,跟路径就是http://www.abc.com/的形式了,所以发布后一定要改过来。这些地方是在使用FCKeditor2.2+ASP.NET2.0时经常发错误而又莫名其所云的地方。
    至此上传功能还差最关键的一步。在FCKeditor所在根目录下(项目文件件名/FCKeditor/)找到fckconfig.js文件,用文本编辑器打开,在大概132行(大概是因为之前您也许参考其它资料更改过这个文件了)的地方找到:

    var _FileBrowserLanguage    = 'asp' ;      // asp | aspx | cfm | lasso | perl | php | py
    var _QuickUploadLanguage = 'asp' ;      // asp | aspx | cfm | lasso | php

    把这两行赋值代码的值由asp改成aspx,保存关闭这个文件。这样基本功能就完成了

    对于开发中使用文件上传功能遇到 XML request error: Internal Server Error(500) 错误的解决办法。
    因为ASP.NET2.0新增了Theme功能,所以如果在你的工程中你对Web.config使用到了styleSheetTheme或theme的话那就要再多修改一下。
    还是到FCKeditor所在的目录,分别打开\editor\filemanager\upload\aspx\upload.aspx和\editor\filemanager\browser\default\connectors\aspx\connector.aspx两个aspx文件,在page标签中添加Theme=""或StyleSheetTheme=""看你在工程使用的是什么就修改什么。修改后如下:
    <%@ Page language="c#" Inherits="FredCK.FCKeditorV2.Uploader" AutoEventWireup="false" Theme="" %>

    <%@ Page language="c#" Inherits="FredCK.FCKeditorV2.Uploader" AutoEventWireup="false" StylesheetTheme="" %>
    这样就解决了500的内部错误.

  • 相关阅读:
    CCPlatformConfig(设置执行平台 iOS android win32等。。。)
    LeetCode Add Binary |My Solution
    actor中!(tell)与forward的差别
    二叉查找树(二叉排序树)创建,插入,删除操作。
    程序猿技术练级攻略
    poj 2236 Wireless Network 【并查集】
    leetcode 题解 || Letter Combinations of a Phone Number 问题
    创业之前 ——Paul Graham 最新博文
    linux-文件系统基本概念
    上拉电阻和下拉电阻的用处和区别
  • 原文地址:https://www.cnblogs.com/MaxWoods/p/1728881.html
Copyright © 2020-2023  润新知