在ASP.NET中进行消息处理(MSMQ) 二

在我上一篇文章《ASP.NET中进行消息处理(MSMQ)一》里对MSMQ做了个通俗的介绍,最后以发送普通文本消息和复杂的对象消息为例介绍了消息队列的使用。本文在此基础上继续介绍MSMQ的相关知识点,最后还是通过一个示例程序来分析MSMQ在实际项目开发中的应用。

建议:如果你对MSMQ不够了解,在你阅读本文前请先阅读第一部分:《ASP.NET中进行消息处理(MSMQ)一》。

一、消息传递的优先级

在MSMQ中消息在队列里传输是分有优先级的,这里我就以实例的形式介绍下关于优先级的使用,优先级一共有七种,MessagePriority枚举里全部进行了封装。因这里只作程序演示就不一一列举出,仅用了Highest和Normal两种类型,关于消息队列上进行消息传输的七种优先级大家可以参考我下面提供的MessagePriority枚举源代码定义。

那么在发送消息的时候怎么指定消息的优先级呢?在Message对象里封装有一个属性Priority,接受一个枚举MessagePriority类型的值来设置消息传输的优先级。如下:

1System.Messaging.Message message = new System.Messaging.Message();
2message.Priority = MessagePriority.Highest; //最高消息优先级

下面来看看一个在消息传输中使用优先级的示例程序,通过示例程序会学习得更明白。示例程序界面:

根据界面可知,提供了消息名字,消息优先级和消息内容三个输入项,前面曾经说过,这里为了方便演示就仅用了Highest和Normal两种类型,当点击发送消息的时候就通过是否选择优先级来设置消息的优先级,代码如下:

1private void btnSend_Click(object sender, EventArgs e)
2{
3  //连接到本地的专用队列myQueue
4  MessageQueue myQueue = new MessageQueue(".\\private$\\myQueue");
5  System.Messaging.Message message = new System.Messaging.Message();
6  message.Label = tbName.Text;
7  message.Body = tbContext.Text;
8
9  if (cbPriority.Checked)
10  {
11    message.Priority = MessagePriority.Highest;
12  }
13  else
14  {
15    message.Priority = MessagePriority.Normal;
16  }
17  myQueue.Send(message);
18  MessageBox.Show("成功发送消息到队列");
19}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索msmq
, 消息
, 优先级
, message
, 消息队列 msmq
示例
,以便于您获取更多的相关知识。

时间: 2024-11-16 17:17:14

在ASP.NET中进行消息处理(MSMQ) 二的相关文章

在ASP.NET中进行消息处理(MSMQ) 三

在本文的前两篇文章里对MSMQ的相关知识点进行了介绍,很多阅读过这前两篇文章的朋友都曾问到过这样一些问题: 1.如何把MSMQ应用到实际的项目中去呢? 2.可不可以介绍一个实际的应用实例? 3....... 在前两篇文章里,关于MSMQ常用的技术点基本介绍完毕了,本文主要以MS开源项目PetShop中的MSMQ应用作为案例来介绍MSMQ在实际项目中的应用.在PetShop里,由于系统使用了多线程的专用应用程序来监控消息队列,在进入PetShop应用分析前,我们先来了解下关于多线程和MSMQ的相关

在ASP.NET中进行消息处理(MSMQ) 一

一.MSMQ介绍和安装消息队列 MSMQ是微软消息队列的英文缩写. 使用消息队列的优点:稳定.消息优先级.脱机能力以及安全性. 消息队列分为用户创建的队列(专用队列)和系统队列,用户队列分为,.我是Windows XP,看下图所示(myQueue为自己创建的消息队列,msmqtriggersnotifiations为通用队列): 对消息队列有了简单的了解后,使用MSMQ进行软件开发需要安装MSMQ,安装完后就该进入实际的开发阶段.具体的安装过程就是在控制面板里"添加/删除程序"下&qu

asp.net中怎么实现扫描二维码可以查看另外一个表单中的详细信息

问题描述 asp.net中怎么实现扫描二维码可以查看另外一个表单中的详细信息 就是在二维码生成的时候如果把另外一个表单中的内容给穿进去,就好像跳转页面似得,只不过变成扫描才能查看信息 解决方案 你的扫描是用户手机扫描还是什么?用户手机扫描你要自己弄个app给用户用,附带二维码扫描功能,二维码存储一个guid,app扫描得到二维码后回发服务器存储,客户端这个二维码页面用计时器和ajax不断轮训服务器获取对应的guid,存在了就控制页面跳转到信息页面或者ajax返回相关信息显示出来

asp.net中利用QRCode生成二维码代码

1.使用下面代码首先需要下载QRCode.DLL文件引用到你的项目中  代码如下 复制代码 //生成二维码代码 public string generateQRCode() {     //生成二维码     string filename = string.Empty;     string filepath = string.Empty;       string txt_qr = "需要生成二维码信息";     string qrEncoding = "Byte&qu

在ASP.NET中实现MVC模式(二)

asp.net 在ASP.NET中实现Model-View-Controller模式(二) MVC模式形容这种实现方式是一种被动的实现机制,ASP.NET充当了程序执行中的控制器的角色,但程序员必须将具体的事件处理方法添加到事件的响应函数中.如在这个例子中,控制器在页面加载之前调用Page_Load函数并执行其中的代码,当用户点击Submit按钮时由系统调用SubmitBtn_Click函数并执行. 这种将代码都包含在一个文件中的实现方式非常的直接,而且当应用程序很小并不经常修改的时候也可以说是

ASP.NET中根据XML动态创建并使用WEB组件(二)

asp.net|web|xml|创建|动态 ASP.NET中根据XML动态创建使用WEB组件 (二) 作者:厉铁帅 三.动态创建WEB组件. 先来看程序实例: private void createconfigtable(int totalnum,int[] sequenceint,string[] namestr,string[] ipstr) { //根据得到测量点的总数,动态生成输入框 for(int i=1;i<=totalnum;i++) { //创建表格 HtmlTable show

Asp.net中创建和使用Ado.net(二)

ado|asp.net|创建 Asp.net中创建和使用Ado.net(二) 二.ADO.NET 的组件 设计 ADO.NET 组件的目的是为了从数据操作中分解出数据访问.ADO.NET 的两个核心组件会完成此任务:DataSet 和 .NET Framework 数据提供程序,后者是一组包括 Connection.Command.DataReader 和 DataAdapter 对象在内的组件. ADO.NET DataSet 是 ADO.NET 的断开式结构的核心组件.DataSet 的设计

ASP.NET中的表格认证之二

asp.net 简介 本文的第二部分主要是介绍如何使用ASP.NET实现我们自己的表格认证的方法.在第一部分中,我们讨论了表格认证的基本概念和原理.在阅读本文的第二部分之前,读者需要了解表格认证的一些基本概念,或者已经阅读过第一部分. 自定义表格认证的建立 使用的页面:Default.aspx.Login.aspx.Web.config.Users.xml.HashPassword.aspx 在这个自定义表格认证的例子中,我们将自始至终地使用一个XML文档存储用户名和口令.建立该自定义表格认证所

在ASP.NET 2.0中操作数据之十二:在GridView控件中使用TemplateField_自学过程

导言 GridView是由一组字段(Field)组成的,它们都指定的了来自DataSource中的什么属性需要用到自己的输出呈现中.最简单的字段类型是BoundField,它仅将数据简单的显示为文本.其他的字段类型使用交互HTML元素(alternate HTML elements)来显示数据.比如说,CheckBoxField将被呈现为一个CheckBox,其选中状态由某特定数据字段的值来决定:ImageField则将某特定数据字段呈现为一个图片,当然,这个数据字段中应该放的是图片类型的数据.