首页 > 代码库 > silverlight中使用富文本编辑器

silverlight中使用富文本编辑器

因为项目的需要在silverlight项目中使用富文本编辑器,好用的在线富文本编辑器有很多Fckeditor,百度的ueditor,但是这些富文本编辑器都是html的,想在silverlight中使用必须承载html页面再使用这些富文本编辑器。

之前找到了一个在silverliht中承载html页面的第三方控件htmlhost,但是这个控件有一个不好的地方时,用了只有silverlight项目中所有服务端控件都不能输入中文。

最近找到了一个大牛自己写的一个控件,能够满足我们的需要,自己改造之后放到了项目中.

首先我将它封装成了一个用户控件,长这样子:

然后在项目中使用,此时遇到一个问题,此控件获得的值实际上xml,通过字符串方式保存到oracle中的clob类型的字段中,会出现字符串过长:

虽然说oracle中clob类型能够保存4G的大对象,但是在如果保存的‘’之间的字符超过2000(2000还是4000记不太清楚了)的话就会出现字符过长的问题,解决办法参数传值。

通过wcf上传文件时,有出现了一个问题:

记得上传了一个60多k的一个word文档,出现了一个错误:“远程服务器返回了错误: NotFound”,查了几篇文章,基本上都直接就指出了,引起错误原因:传输的数据量过大,需要配置服务端和客服端的Config。

1.在(服务端)webconfig中配置:

<system.serviceModel>      

   <services>              

       <service behaviorConfiguration="metadataBehavior" name="DigitalCityCommandPlatform.Web.OracleService">          

       <endpoint binding="basicHttpBinding" bindingConfiguration="NewBinding0" contract="DigitalCityCommandPlatform.Web.IOracleService"/>        

       </service>      

  </services>               

  <behaviors>            

      <serviceBehaviors>                

         <behavior name="metadataBehavior">                    

          <serviceMetadata httpGetEnabled="true" />                    

          <serviceDebug includeExceptionDetailInFaults="false" />                

       </behavior>            

   </serviceBehaviors>        

 </behaviors>        

 <serviceHostingEnvironment aspNetCompatibilityEnabled="true"    multipleSiteBindingsEnabled="true"/>

 <bindings>        

<basicHttpBinding>          

<binding name="NewBinding0" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Text">             <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>          

</binding>        

</basicHttpBinding>      

</bindings>      

2.在客户端配置,这个配置文件时自动生成的

在<system.serviceModel>中添加以下代码

      <bindings>
            <basicHttpBinding>              
                <binding name="BasicHttpBinding_IOracleService" maxBufferSize="2147483647"
                    maxReceivedMessageSize="2147483647">
                    <security mode="None" />
                </binding>
            </basicHttpBinding>
        </bindings>

 

 2147483647最大字节数,这个是int32的最大字节数,大小是2047M,肯定能适合正常的数据传输。

好了,基本功能都以实现了。