MessageQueue.ReceiveByLookupId 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
MSMQ 3.0에서 도입되었습니다. 큐에서 특정 메시지를 받습니다. 메시지는 조회 식별자로 지정하거나 큐의 앞이나 뒤와 같은 위치로 지정할 수 있습니다.
오버로드
ReceiveByLookupId(Int64) |
MSMQ 3.0에서 도입되었습니다. 비트랜잭션 큐에서 지정된 조회 식별자를 갖는 메시지를 받습니다. |
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction) |
MSMQ 3.0에서 도입되었습니다. 트랜잭션 큐에서 특정 메시지를 받습니다. 메시지는 조회 식별자로 지정하거나 큐의 앞이나 뒤와 같은 위치로 지정할 수 있습니다. |
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType) |
MSMQ 3.0에서 도입되었습니다. 지정된 트랜잭션 컨텍스트를 사용하여 큐에서 특정 메시지를 받습니다. 메시지는 조회 식별자로 지정하거나 큐의 앞이나 뒤와 같은 위치로 지정할 수 있습니다. |
ReceiveByLookupId(Int64)
MSMQ 3.0에서 도입되었습니다. 비트랜잭션 큐에서 지정된 조회 식별자를 갖는 메시지를 받습니다.
public:
System::Messaging::Message ^ ReceiveByLookupId(long lookupId);
public System.Messaging.Message ReceiveByLookupId (long lookupId);
member this.ReceiveByLookupId : int64 -> System.Messaging.Message
Public Function ReceiveByLookupId (lookupId As Long) As Message
매개 변수
반환
전달된 lookupId
매개 변수와 Message 속성이 일치하는 LookupId를 반환합니다.
예외
MSMQ 3.0이 설치되어 있지 않은 경우
지정된 lookupId
의 메시지를 찾을 수 없는 경우
메시지 큐 메서드에 액세스하는 동안 오류가 발생한 경우
설명
이 메서드를 사용하여 알려진 조회 식별자가 있는 메시지를 읽고 큐에서 제거합니다. 이 메서드는 메시지가 큐에 없는 경우 즉시 예외를 throw합니다.
메시지의 속성은 LookupId 메시지가 있는 큐에 고유하므로 큐에 지정된 lookupId
매개 변수와 일치하는 최대 하나의 메시지가 있습니다.
지정된 조회 식별자가 있는 메시지를 큐에서 제거하지 않고 읽으려면 메서드를 PeekByLookupId 사용합니다.
다음 표에서는 이 메서드를 다양한 작업 그룹 모드에서 사용할 수 있는지 여부를 보여 줍니다.
작업 그룹 모드 | 사용 가능 |
---|---|
수집 | Yes |
로컬 컴퓨터 및 직접 형식 이름 | Yes |
원격 컴퓨터 | No |
원격 컴퓨터 및 직접 형식 이름 | Yes |
추가 정보
적용 대상
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)
MSMQ 3.0에서 도입되었습니다. 트랜잭션 큐에서 특정 메시지를 받습니다. 메시지는 조회 식별자로 지정하거나 큐의 앞이나 뒤와 같은 위치로 지정할 수 있습니다.
public:
System::Messaging::Message ^ ReceiveByLookupId(System::Messaging::MessageLookupAction action, long lookupId, System::Messaging::MessageQueueTransaction ^ transaction);
public System.Messaging.Message ReceiveByLookupId (System.Messaging.MessageLookupAction action, long lookupId, System.Messaging.MessageQueueTransaction transaction);
member this.ReceiveByLookupId : System.Messaging.MessageLookupAction * int64 * System.Messaging.MessageQueueTransaction -> System.Messaging.Message
Public Function ReceiveByLookupId (action As MessageLookupAction, lookupId As Long, transaction As MessageQueueTransaction) As Message
매개 변수
- action
- MessageLookupAction
큐에서 메시지를 읽는 방법을 지정하는 MessageLookupAction 값 중 하나입니다. 다음 중 하나를 지정합니다.
MessageLookupAction.Current
: lookupId
로 지정된 메시지를 받고 큐에서 제거합니다.
MessageLookupAction.Next
: lookupId
로 지정된 메시지의 뒤에 있는 메시지를 받고 큐에서 제거합니다.
MessageLookupAction.Previous
: lookupId
로 지정된 메시지의 앞에 있는 메시지를 받고 큐에서 제거합니다.
MessageLookupAction.First
: 큐에 있는 첫 번째 메시지를 받고 큐에서 제거합니다. lookupId
매개 변수는 0으로 설정되어야 합니다.
MessageLookupAction.Last
: 큐에 있는 마지막 메시지를 받고 큐에서 제거합니다. lookupId
매개 변수는 0으로 설정되어야 합니다.
- transaction
- MessageQueueTransaction
반환
전달된 lookupId
및 action
매개 변수로 지정된 Message입니다.
예외
MSMQ 3.0이 설치되어 있지 않은 경우
지정된 lookupId
의 메시지를 찾을 수 없는 경우
action
매개 변수가 MessageLookupAction 멤버 중 하나가 아닌 경우
설명
이 메서드를 사용하여 알려진 조회 식별자가 있는 메시지를 읽고 매개 변수로 정의된 transaction
트랜잭션 컨텍스트를 사용하여 큐에서 제거합니다. 이 메서드는 메시지가 큐에 없는 경우 즉시 예외를 throw합니다.
메시지의 속성은 LookupId 메시지가 있는 큐에 고유하므로 큐에 지정된 lookupId
매개 변수와 일치하는 최대 하나의 메시지가 있습니다.
이 메서드는 트랜잭션 큐에서 호출되므로 트랜잭션이 중단되면 수신된 메시지가 큐로 반환됩니다. 트랜잭션이 커밋될 때까지 메시지는 큐에서 영구적으로 제거되지 않습니다.
지정된 식별자가 있는 메시지를 큐에서 제거하지 않고 읽으려면 메서드를 PeekByLookupId 사용합니다. 에 대한 호출 PeekByLookupId에서 반환된 메시지와 연결된 트랜잭션 컨텍스트가 없습니다. 는 PeekByLookupId 큐에서 메시지를 제거하지 않으므로 트랜잭션이 중단된 경우 롤백할 것이 없습니다.
다음 표에서는 이 메서드를 다양한 작업 그룹 모드에서 사용할 수 있는지 여부를 보여 줍니다.
작업 그룹 모드 | 사용 가능 |
---|---|
수집 | Yes |
로컬 컴퓨터 및 직접 형식 이름 | Yes |
원격 컴퓨터 | No |
원격 컴퓨터 및 직접 형식 이름 | Yes |
추가 정보
적용 대상
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)
MSMQ 3.0에서 도입되었습니다. 지정된 트랜잭션 컨텍스트를 사용하여 큐에서 특정 메시지를 받습니다. 메시지는 조회 식별자로 지정하거나 큐의 앞이나 뒤와 같은 위치로 지정할 수 있습니다.
public:
System::Messaging::Message ^ ReceiveByLookupId(System::Messaging::MessageLookupAction action, long lookupId, System::Messaging::MessageQueueTransactionType transactionType);
public System.Messaging.Message ReceiveByLookupId (System.Messaging.MessageLookupAction action, long lookupId, System.Messaging.MessageQueueTransactionType transactionType);
member this.ReceiveByLookupId : System.Messaging.MessageLookupAction * int64 * System.Messaging.MessageQueueTransactionType -> System.Messaging.Message
Public Function ReceiveByLookupId (action As MessageLookupAction, lookupId As Long, transactionType As MessageQueueTransactionType) As Message
매개 변수
- action
- MessageLookupAction
큐에서 메시지를 읽는 방법을 지정하는 MessageLookupAction 값 중 하나입니다. 다음 중 하나를 지정합니다.
MessageLookupAction.Current
: lookupId
로 지정된 메시지를 받고 큐에서 제거합니다.
MessageLookupAction.Next
: lookupId
로 지정된 메시지의 뒤에 있는 메시지를 받고 큐에서 제거합니다.
MessageLookupAction.Previous
: lookupId
로 지정된 메시지의 앞에 있는 메시지를 받고 큐에서 제거합니다.
MessageLookupAction.First
: 큐에 있는 첫 번째 메시지를 받고 큐에서 제거합니다. lookupId
매개 변수는 0으로 설정되어야 합니다.
MessageLookupAction.Last
: 큐에 있는 마지막 메시지를 받고 큐에서 제거합니다. lookupId
매개 변수는 0으로 설정되어야 합니다.
- transactionType
- MessageQueueTransactionType
MessageQueueTransactionType 값 중 하나로, 메시지와 연결할 트랜잭션 컨텍스트 형식을 설명합니다.
반환
전달된 action
및 lookupId
매개 변수로 지정된 Message입니다.
예외
MSMQ 3.0이 설치되어 있지 않은 경우
지정된 lookupId
의 메시지를 찾을 수 없는 경우
메시지 큐 메서드에 액세스하는 동안 오류가 발생한 경우
action
매개 변수가 MessageLookupAction 멤버 중 하나가 아닌 경우
또는
transactionType
매개 변수가 MessageQueueTransactionType 멤버 중 하나가 아닌 경우
설명
이 메서드를 사용하여 알려진 조회 식별자가 있는 메시지를 읽고 매개 변수로 정의된 transactionType
트랜잭션 컨텍스트를 사용하여 큐에서 제거합니다. 이 메서드는 메시지가 큐에 없는 경우 즉시 예외를 throw합니다.
메시지의 속성은 LookupId 메시지가 있는 큐에 고유하므로 큐에 지정된 lookupId
매개 변수와 일치하는 최대 하나의 메시지가 있습니다.
지정된 식별자가 있는 메시지를 큐에서 제거하지 않고 읽으려면 메서드를 PeekByLookupId 사용합니다. 에 대한 호출 PeekByLookupId에서 반환된 메시지와 연결된 트랜잭션 컨텍스트가 없습니다. 는 PeekByLookupId 큐에서 메시지를 제거하지 않으므로 트랜잭션이 중단된 경우 롤백할 것이 없습니다.
메시지를 수신하는 transactionType
데 사용할 스레드에 연결된 외부 트랜잭션 컨텍스트가 이미 있는 경우 매개 변수를 지정 Automatic
합니다. Single
메시지를 단일 내부 트랜잭션으로 받을지 지정합니다. 트랜잭션 컨텍스트 외부의 트랜잭션 큐에서 메시지를 받을지 지정할 수 있습니다 None
.
트랜잭션 큐에서 메시지를 수신하기 위해 이 메서드를 호출하면 트랜잭션이 중단된 경우 수신된 메시지가 큐로 반환됩니다. 트랜잭션이 커밋될 때까지 메시지는 큐에서 영구적으로 제거되지 않습니다.
다음 표에서는 이 메서드를 다양한 작업 그룹 모드에서 사용할 수 있는지 여부를 보여 줍니다.
작업 그룹 모드 | 사용 가능 |
---|---|
수집 | Yes |
로컬 컴퓨터 및 직접 형식 이름 | Yes |
원격 컴퓨터 | No |
원격 컴퓨터 및 직접 형식 이름 | Yes |
추가 정보
적용 대상
.NET