已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/北大青鸟上地软件园:WCF三种Binding 转眼wcf技术已经出现很多年了,也在.net界混的风生水起,同时.net也是一个高度封装的框架,作为在wcf食物链最顶端的我们所能做的任务已经简单的不能再简单了,再简单的话马路上的大妈也能写wcf了,好了,wcf最基本的概念我们放在后面慢慢分析,下面我们来看看北大青鸟上地软件园神奇的3个binding如何KO我们实际场景中的80%的业务场景。一:basicHttpBinding作为入门第一篇,也就不深入谈谈basic中的信道栈中那些啥东西了,你只需要知道有ABC三个要素,注意不是姨妈巾哦,如果需要详细了解,可以观赏我以前的系列。在这里我就不多说了,太简单的东西没意思,先看个例子简单感受了,你只需知道的是basic走的是http协议就好了,传输消息为soap。1. 契约 1 using System.Runtime.Serialization; 2 using System.ServiceModel; 3 4 namespace MyService 5 6 ServiceContract 7 public interface IHomeService 8 9 OperationContract10 int GetLength(string name);11 12 2. 实现类 1 using System; 2 using System.Messaging; 3 using System.Threading; 4 5 namespace MyService 6 7 public class HomeService : IHomeService 8 9 public int GetLength(string name)10 11 return name.Length;12 13 14 3. 服务启动 1 using System; 2 using System.ServiceModel; 3 4 namespace MyService 5 6 class Program 7 8 static void Main(string args) 9 10 using (ServiceHost host = new ServiceHost(typeof(HomeService)11 12 try13 14 host.Open();15 16 Console.WriteLine(服务开启!);17 18 Console.Read();19 20 catch (Exception e)21 22 Console.WriteLine(e.Message);23 24 25 26 27 4. 配置config文件 5. 然后通过 servicehost 启动服务端using System;using System.ServiceModel;namespace MyService class Program static void Main(string args) using (ServiceHost host = new ServiceHost(typeof(HomeService) try host.Open(); Console.WriteLine(服务开启!); Console.Read(); catch (Exception e) Console.WriteLine(e.Message); 好了,到现在为止,服务端全部开启完毕,北大青鸟上地软件园接下来我们通过“添加服务引用”,来添加对客户端的引用 1 using System; 2 3 namespace ConsoleApplication1 4 5 class Program 6 7 static void Main(string args) 8 9 HomeServiceReference.HomeServiceClient client = new HomeServiceReference.HomeServiceClient();10 11 var s = client.GetLength(12345);12 13 Console.WriteLine(长度为:0, s);14 15 Console.Read();16 17 18 麻蛋,就这么简单,是的,就这样简单的五步,基于http的通信就这样被不小心的完成了,真不好意思。二:netTcpBinding有了basic的代码,现在我们要改成tcp通信,这会通信走的是字节流,很简单,改一下服务端的config文件就好了,大家也知道这种性能要比basic好。 三:netMsmqBindingmsmq这个玩意,我想大家都清楚,一个物理上的文件,好处呢,你也明白,就是client和service的所有通信都要经过它的手,这样任何一方出了问题,只要它在就没问题了。同样我们把tcp改成msmq也是非常简单的,不过要注意,msmqbinding中是不可以让契约方法有返回值的。所以我们加上isoneway就好了。using System.Runtime.Serialization;using System.ServiceModel;namespace MyService ServiceContract public interface IHomeService OperationContract(IsOneWay = true) void GetLength(string name); 然后我在mmc上新建一个消息队列,如下:然
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年半导体行业媒体编辑岗年终行业洞察总结
- 赣州银行金融科技人员社会招聘备考题库参考答案详解
- 2026河北银行校园招聘备考题库含答案详解(b卷)
- 2026中国农业银行西藏自治区分行校园招聘300人备考题库及1套完整答案详解
- 2025浙江杭州市上城区人民政府南星街道办事处编外人员招聘3人备考题库及一套答案详解
- 2025沈阳市苏家屯区面向社会公开招聘社区工作者28人备考题库附答案详解(黄金题型)
- 2026福建省面向华东师范大学选调生选拔工作备考题库附答案详解(夺分金卷)
- 2025下半年上海嘉定区社区工作招聘20人备考题库含答案详解(考试直接用)
- 2025浦发银行广州分行招聘9人备考题库有答案详解
- 2025通辽科左中旗招聘25名社区工作者备考题库及完整答案详解1套
- 2025年内蒙古行政执法考试试题及答案
- 908家畜传染病学试题河南科技大学
- 锂离子电池粘结剂总结ATLCATL课件
- GB/T 17491-2023液压传动泵、马达稳态性能的试验方法
- 市政工程旁站监理细则完整版
- 格力空调预算报价单
- 热能动力工程认识实习 教学大纲
- GB 31247-2014电缆及光缆燃烧性能分级
- 世界之最-家长进课堂课件
- 电气安装工程施工工艺培训课件
- 硬笔书法纸(A3)-制作模板63WORD
评论
0/150
提交评论