I know this topic already exists but i strongly disagree with the explanation there. Let met make something clear:
When you have a string argument in a workflow with a default value of “test” (in the workflow) and you don’t specify a value for that argument when calling that workflow the variable gets a value of “test”, that looks perfectly normal to me. When you have a boolean argument with no value specified when calling the variable is always False regardless of the default in the workflow, which is simply wrong. The argument in the other thread that this is because the default value of a boolean is False make no sense since a default value of string is null (nothing). So why is my string argument not null when i don’t specify a value? Because it has a default value! So why is my boolean argument not set to his default??? so both types are clearly behaving different from the default .Net default interpretation of the type.
If the boolean behaviour is correct, how can i pass a null value for my string now? It is set to the default of the workflow when i don’t specify it… Makes no sense right?