나는 WF4 활동을 구현했다. 필요한 일부 InArguments, 하나는 InOutArgument가 필요하고 다른 하나는 OutArgument입니다.RequiredArgumentAttribute가 InOutArguments에서 올바르게 작동하지 않습니까?
활동이 xaml (즉, 워크 플로우 디자이너)에서 구현 되었기 때문에 xaml에서 analog를 '필수'로 표시하는 방법 (C에서 # [RequiredArgument]
으로 변환)을 수행하는 방법에 대한 정보를 검색해야했습니다. 그것은 :
http://msdn.microsoft.com/en-us/library/ee358733(v=vs.100).aspx
<x:Property Name="Operand1" Type="InArgument(x:Int32)">
<x:Property.Attributes>
<RequiredArgumentAttribute />
</x:Property.Attributes>
</x:Property>
이 모든 InArguments을 위해 잘 작동합니다. 하지만 테스트를 구현할 때 InOutArguments에서 제대로 작동하지 않는다는 것을 알았습니다. 매개 변수를 제공하지 않고 내 테스트에서 WorkflowInvoker.Invoke
으로 xaml 활동을 실행하면 이 필요한 모든 InArguments에 대해 불만을 제기하지만 필요한 InOutArgument는 불평하지 않습니다. 필요한 모든 InArguments를 사용하여 작업을 실행했지만 필요한 InOutArgument가없는 경우 아무런 ArgumentException
도 throw되지 않습니다.
Workflow Foundation의 버그 일 수 있습니까?
재미있는 점은 매개 변수를 제공하지 않고 워크 플로에서이 활동을 사용하면 워크 플로 디자이너에서이 빨간색 느낌표가 표시되어 어떤 매개 변수에 입력이 필요한지 알 수 있다는 것입니다. 그리고 여기서 InOutArgument 은 언급 된 동작 인입니다.
이것은 매우 좋게 보입니다. 제네릭으로 정리 된 버전을 가지고 있다면, 나는 흥미가있을 것이다 ;-) – MaDev