- - PR -
MSMQの操作
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-01-23 11:08
こんにちは、Motoです。
いつもお世話になっております。 MSMQ3.0を使って簡単なテストアプリケーションを作成し勉強しているのですが 原因がわからないエラーのため悩んでいます。 どなたか教えてください。 【環境】 ・Windows XP pro ・IIS5.0 ・SharpDevelop ・C# ・MSMQ3.0 ・専用キューをコンピュータの管理画面から作成。(トランザクション) 【アプリの機能】 ・送るボタンを押したら、MSMQにデータを送る ・受取るボタンを押したら、MSMQからデータを受取る 【現象】 ビルド時に、using System.Messaging;を先頭で宣言して、Messageクラスを使用しているところで、あいまいな参照です。とエラーがでる。 【コード(抜粋)】 ※WindowsFormにテキストボックス1つ、ボタン2つの簡単な画面 void BtSendClick(object sender, System.EventArgs e) { MessageQueue myQueue = new MessageQueue(".\\private$\\motoQ"); if (myQueue.Transactional == true) { myQueue.Send("My Message Data.", new MessageQueueTransaction()); } } void BtReciveClick(object sender, System.EventArgs e) { MessageQueue myQueue = new MessageQueue(".\\Private$\\motoQ"); myQueue.Formatter = new XmlMessageFormatter(new Type[] {typeof(String)}); MessageQueueTransaction myTransaction = new MessageQueueTransaction(); myTransaction.Begin(); Message myMessage = myQueue.Receive(myTransaction); String myOrder = (string)myMessage.Body; this.textBox.Text = myOrder; myTransaction.Commit(); } 【備考】 コードはMSDNのサンプルから抜粋し、一部変更したものです。 また、上記BtSendClickイベントは実行できるのですが、コンピューターの管理(メッセージキュー)をみても、何も追加さえれていないので、正しく実行されているのかわかりません。僕のイメージではSendコマンド実行後、コンピューターの管理(メッセージキュー)の方に何か表示されるのではないかと期待していたのですが、MSMQ初心者で正しい動作がわからないため、判断できなかったです。 【解決したいこと】 ・あいまいな参照ですのエラーがなぜでるのか ・Sendと、Reciveの使い方はあっているのか どなたかよろしくお願いします。 |
|
投稿日時: 2004-01-26 10:16
Messageクラスは
System.Web.Services.Description.Messageクラスと System.Messaging.Messageクラス があるのでusingの指定によってはどっちか判断つかなくなる場合があります。 Messageの部分をSystem.Messaging.Messageと置き換えてみてください |
1