IDE에서 읽은 메시지를 삭제 방지하는 것입니다 메시지에 그 함수가 준비가되지 않았다면 다른 함수를 호출 한 다음 메시지가 대기열에 있어야합니다.은 가능한 자동 후 MSMQ
내 MSMQ 수신 보내기 코드 : 당신은 내가 메시지를 다시 수신 메시지를 검증하고, 코드를받을에서 볼 수 있듯이
private void button1_Click(object sender, EventArgs e)
{
//MSMQ Send :
if (MessageQueue.Exists(@".\Private$\MyQ"))
{
myQ = new MessageQueue(@".\Private$\MyQ");
}
else
{
myQ = MessageQueue.Create(@".\Private$\MyQ");
}
string xmlText = getxmlString();
System.Messaging.Message msg = new System.Messaging.Message();
msg.Formatter = new XmlMessageFormatter();
msg.Body = xmlText;
msg.Label = "MyXmlMessage";
msg.Priority = MessagePriority.Normal;
myQ.Send(msg);
}
private void button2_Click(object sender, EventArgs e)
{
//MSMQ Receive
myQ = new MessageQueue(@".\Private$\MyQ");
System.Messaging.Message myMsg = myQ.Receive();
myMsg.Formatter = new XmlMessageFormatter(new String[] { "System.String,mscorlib" });
bool IsValidated = Validate(myMsg.Body.ToString());
}
internal void Validate(string message)
{
//some logic
return false;
}
는, 저는 여기에 해당 메시지가 큐에서 삭제하려는에만 IsValidated 경우 사실입니다,
기본적으로 나는 자동 삭제 메시지의 미래를 방지하고 유효성 검사가되면 대기열에서 해당 메시지를 삭제하려고합니다.
이 목표를 달성하기 위해 내가 어떤 수정을해야하는지 말해 줄 수 있습니까?
, 내가 – yogeshkmrsoni
좋아요 그래서 슬쩍 방법이 유용 할 것이다 해보자하지만, 메시지는 예를 들어 수동 큐에서 해당 메시지를 삭제하는 방법을 확인하면 당신은 슬쩍 후 저를 알 수 있습니다. – yogeshkmrsoni
그냥 평범한대로'Receive()'를 호출하십시오. – Neverever