由于CSLA数据门户支持WCF代理,所以这里我就很自然的使用了WCFProxy功能来作为分布式应用支持。在园子中有很多人对WCF如何使用都进行了细致的介绍,而且本人其实也只是了解WCF的皮毛而已,所以我这里就不作具体介绍,大家想从整体上了解如何使用WCF的可以上网去搜索一下。
由于CSLA内置了WCF数据门户,所以在使用过程中只需要在服务器端和客户端进行配置即可,但是必须对一些参数进行配置,这也是我在过程中遇到的一些问题,由于应用中可能会传输较大数据,所以会对修改一些配置以及添加压缩数据功能。本篇主要讲解一下与OpenExpressApp相关的WCF知识。
服务器端配置
在等为了支持大数据量进行了配置。
服务器端可以宿主在IIS中和window以及服务中,现在OEA提供了一个WPF window宿主(项目名称为:OpenExpressApp.Server.WPFHost),在代码中启动,代码如下:
客户端配置
首先在appSetting中添加 CslaDataPortalProxy Key为Csla.DataPortalClient.WcfProxy, Csla,指定使用WCF数据门户
<add key="CslaAuthentication" value="Csla" />
<add key="CslaPropertyChangedMode" value="Xaml" />
<add key="CslaDataPortalProxy" value="Csla.DataPortalClient.WcfProxy, Csla"/
</appSettings>
然后再在
压缩
在没有压缩之前,通过外网访问,发现速度有点慢。于是想看看网络压缩比会有多大,我通过HTTP调试工具Fiddler查看WCF传输压缩率的,通过gZip压缩后发现可以减少20倍。于是觉得给WCF加上压缩通道。在网上搜到的两个压缩功能,用了其中一个,可以压缩大概20倍,源码在【OpenSource】目录下的CompactMessageEncoder_src.zip,参考文档在CompactMessageEncoder
更多内容: 开源信息系统开发平台之OpenExpressApp框架.pdf
欢迎转载,转载请注明:转载自周金根 [ http://zhoujg.cnblogs.com/ ]