2010-01-27 3 views
2

수신 포트/위치의 이름을 검사하거나 해당 메시지가 수신 된 수신 포트 또는 위치를 알고 싶습니다. 이름 또는 각 포트/위치에서 정의 할 수있는 정적 문자열 사용BizTalk 2006에서 메시지의 수신 포트 또는 위치 결정

메시지에 대한 작업을 수행하기 위해이 정보를 사용자 지정 디스 어셈 블러에서 사용 하겠지만, 알고있는 메시지의 포트를 알아야합니다 나는 그 메시지에 어떤 일을해야 하는가. 이처럼 사용자 지정 구성 요소에서 컨텍스트 속성을 읽는 방법을 알고 있다고 확신하지만 이전에 컨텍스트를 채우는 방법을 알 수 없습니다. 그리고 메시지가 들어온 포트가 메시지 자체의 어느 위치에 있는지 알 수 없습니다.

답변

5

Abhilash's blog에 사용 가능한 컨텍스트 속성의 좋은 목록이 있습니다. 그게 내가 필요로하는 정확한 솔루션했다

public IBaseMessage Execute(IPipelineContext pContext, IBaseMessage pInMsg)  
{  
    IBaseMessageContext context = pInMsg.Context; 
    string portName = context.Read("ReceivePortName", "http://schemas.microsoft.com/BizTalk/2003/system-properties").ToString(); 
} 
+0

감사 데이비드 : 당신이 뭔가를 원할 것 파이프 라인에 있도록

은 당신이 원하는 것은의 ReceivePortName입니다. –