Setting internal properties in composite WF4 Activities at design time에 대한 후속 질문입니다."활동은 자신이 소유 한 인수 위치 만 가져올 수 있습니다."
일부 속성이 미리 정의되어있는 Receive 및 SendReply 활동이 포함 된 복합 Windows 워크 플로 활동 (.NET 4)을 만들고 있습니다. 이것은 활동 템플리트가 아닌 NativeActivity입니다. (예는 위의 질문에 @Maurice's reply를 참조하십시오.)
을 나는 (부모의 컨텍스트를 사용하여) 실행에서 내부 SendReply와 관련된 InArgument를 설정하려고하면, 내가 할 InvalidOperationException이 :
활동을 자신이 소유 한 인수의 위치 만 가져올 수 있습니다. 액티비티 'CreateInstance'가 'SendReply'액티비티에서 소유하고있는 'Parameter0' 인수의 위치를 얻으려고합니다.
제 경우에는 CorrelationHandle을 설정하려고하는데, 이것이 SendParametersContent Parameters에도 영향을 미친다 고 생각합니다. 이 문제를 어떻게 해결할 수 있습니까?
우수; 고맙습니다! Execute 메서드에서 액세스 할 수 있도록 일반 Variables 개인 필드를 만들었습니다. Set (context, correlationHandle)이 작동하지 않는다는 것을 발견했습니다. "Handle 하위 유형의 변수에서 연산을 수행 할 수 없습니다." CorrelationHandle이 성공한 InArgument가되도록 논리를 수정했습니다. (RequestReply보다는 QueryCorrelationInitializer를 사용하고 있습니다.) – TrueWill
이것은 4.5에서 변경된 것 같습니다. 두려운 "한 명 이상의 어린이에게 유효성 검사 오류가 있습니다." –