升级WCF后端通信架构,开发更简单高效!CSFrameworkV5.1旗舰版
升级WCF后端通信架构,开发更简单高效!CSFrameworkV5.1旗舰版
CSFrameworkV5.1旗舰版(2021最新修改): 客户端WCF核心库全面升级,技术架构更清晰、简洁、高效! WCF客户端核心库 WCF_Base.cs C# Code: /// <summary> /// WCF客户端代理层-基类 /// </summary> /// <typeparam name="T"></typeparam> public class WCF_Base<T> where T : class { /// <summary> /// 执行WCF方法 /// </summary> /// <param name="action">调用WCF接口核心逻辑</param> protected void Excute(Action<T> action) { T svc = null; try { svc = WCFFactory.Create<T>(); action(svc); this.CloseService(svc as ICommunicationObject);//关闭WCF服务 } catch (Exception ex) { if (svc != null) this.CloseService(svc as ICommunicationObject); throw ex; } } /// <summary> /// 执行WCF方法 /// </summary> /// <typeparam name="R">数据类型</typeparam> /// <param name="action">调用WCF接口核心逻辑</param> /// <returns></returns> protected R Excute<R>(Func<T, R> action) { T svc = null; try { svc = WCFFactory.Create<T>();//创建WCF接口实例 R result = action(svc);//调用接口逻辑 this.CloseService(svc as ICommunicationObject);//关闭WCF服务 return result; } catch (Exception ex) { if (svc != null) this.CloseService(svc as ICommunicationObject); throw ex; } } /// <summary> /// 执行指定WCF接口的方法 /// </summary> /// <typeparam name="M">WCF接口</typeparam> /// <typeparam name="R">数据类型</typeparam> /// <param name="action">调用WCF接口核心逻辑</param> /// <returns></returns> protected R Excute<R, M>(Func<M, R> action) where M : class { M svc = null; try { svc = WCFFactory.Create<M>();//创建WCF接口实例 R result = action(svc);//调用接口逻辑 this.CloseService(svc as ICommunicationObject);//关闭WCF服务 return result; } catch (Exception ex) { if (svc != null) this.CloseService(svc as ICommunicationObject); throw ex; } } private void CloseService(ICommunicationObject svc) { try { //查看连接状态,关闭WCF CommunicationState state = svc.State;//创建WCF通道,默认State=Opened; svc.Close(); //svc.Close();//测试关闭状态下,调用Close } catch { } } } //来源:C/S框架网 | www.csframework.com | QQ:23404761 客户端WCF类 C# Code: public class WCF_AdvancedFilter : WCF_Base<ICommonService>, IBridge_AdvancedFilter //来源:C/S框架网 | www.csframework.com | QQ:23404761 客户端调用接口 C# Code: public List<MyConfigData> GetConfig(string account) { return this.Excute(client => { byte[] loginTicket = WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser); return client.AdvancedFilter_GetConfig(loginTicket, account); }); } //来源:C/S框架网 | www.csframework.com | QQ:23404761 扫一扫加作者微信
参考文档:
开发框架3.0:WebService升级WCF操作指引(1) 开发平台WCF架构(Web服务)使用压缩数据双向通信测试报告 CSFramework平台的WCF体系架构 (Win服务承载与透明代理) 基于WCF通信的C/S系统快速开发框架的部分架构设计 基于C/S三层架构的WCF开发框架接口调用流程|C/S框架网 基于Winform三层架构+WCF+ORM模型的快速开发框架 .NET WebApi开发框架精简高效架构及用户体验 【原创】简单快速软件开发平台,C/S架构二次开发平台 CSFramework.WebApi后端框架Token令牌体系架构与应用详解 C/S架构快速开发框架SQL并发测试压力测试 | www.csframework.com CSFramework.COM C/S架构开发框架成功案例汇总 CSFramework开发框架V5基础架构 - VS解决方案DevExpress 15.x 升级 17.x Winform企业级WCF快速开发框架平台(C/S架构+WCF+DevExpress+SQL多数据库) CSFramework WCF开发框架 - 多个WCF服务接口合并到一个svc服务 轻量级框架-WinFrameworkV2.1 - Winform开发框架 - 简单高效,敏捷开发!
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |