千家信息网

WCF消息队列的解决方案是什么

发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,WCF消息队列的解决方案是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。消息就是信息的来源,在WCF中消息队列分为公共队列、专用队列
千家信息网最后更新 2024年11月18日WCF消息队列的解决方案是什么

WCF消息队列的解决方案是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

消息就是信息的来源,在WCF中消息队列分为公共队列、专用队列、管理队列、响应队列四种,下面我们就简单的分析一下WCF消息队列吧。MessageQueue.Create参数是存放消息队列的位置.这个基本就完成了创建和发送消息的主程序.下面我们来建立一个客户端,来访问消息队列,获取消息,同样建立一个控制台应用程序,添加引用和代码:

1namespace MSMQClient  class Program  {  static void Main(string[] args)  {  //Get public queue message  if (MessageQueue.Exists(@".FrankMSMQ"))//判断是否存在消息队列  {   using(MessageQueue mq = new MessageQueue(@".FrankMSMQ"))//创建消息队列对象  {  mq.Formatter = new XmlMessageFormatter(new string[] { "System.String" });//设置消息队列的格式化器  //mq.Send("Sample Message", ":Label");  Message msg = mq.Receive();//从队列接受消息  Console.WriteLine("Received MSMQ Message is :{0}", msg.Body);//输出消息  }  //Console.Read();  }  //Get private queue message  if (MessageQueue.Exists(@".Private$FrankMSMQ"))//判断私有消息是否存在  {  using (MessageQueue mq = new MessageQueue(@".Private$FrankMSMQ"))  {  mq.Formatter = new XmlMessageFormatter(new string[] { "System.String" });//设置消息队列格式化器  //mq.Send("Sample Message", ":Label");  Message msg = mq.Receive();//接收消息  Console.WriteLine("Received MSMQ Private Message is: {0}", msg.Body);//输出消息  }  }  Console.Read();  }  }  }

消息接收同样需要实例化一个WCF消息队列对象, using(MessageQueue mq = new MessageQueue(@".FrankMSMQ"))负责创建WCF消息队列对象.其次 mq.Formatter = new XmlMessageFormatter(new string[] { "System.String" })这行代码负责设置消息队列的格式化器,因为消息的传递过程中存在格式化的问题.我们接收消息的时候必须指定消息队列的格式化属性Formatter, 队列才能接受消息。

XmlMessageFormatter的作用是进行消息的XML串行化.BinaryMessageFormatter则把消息格式化为二进制数据进行传输.ActiveXMessageFormatter把消息同样进行二进制格式化,区别是可以使用COM读取队列中的消息.当然消息队列还可以发送复杂的对象,前提是这个对象要可串行化,具体的格式取决与队列的格式化器设置.此外消息队列还支持事务队列来确保消息只发送一次和发送的顺序.最近在研究SOA,所以系统系统学习一下WCF及其相关的技术。

看完上述内容,你们掌握WCF消息队列的解决方案是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

消息 队列 格式 对象 问题 方案 解决方案 二进制 代码 内容 方法 更多 系统 输出 复杂 束手无策 为此 主程序 事务 位置 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 学习软件开发要多少钱 浙江cdma时钟同步服务器地址 数据库矩形菱形 自动化网络技术厂家价格 数据库中外部码能为空吗 数据库物理存储是什么 苏州app手机软件开发 上海仓库管理应用软件开发 多接点什么网络技术形态 杭州麦田网络技术有限公司 麒麟操作系统服务器版 太原网络安全实习生 中软国际网络安全入职考试题库 安徽口碑好的网络技术市场价格 怎样修改网络安全级别 国产数据库的未来在哪里 安卓手机软件开发视频教程 网络安全法实施先后顺序 学软件开发学校好吗 福建省新年网络技术公司 阿里云日本数据库 h2数据库怎么查看版本号 带你走进网络安全宣传周 战争雷霆怎么选择服务器 生物信息数据库数据挖掘 db2数据库增加列自增 美亚光电软件开发岗 中国语言数据库 残联网络安全检查自查报告 绝地求生从哪里看是哪个服务器
0