public List<InArgument<string>> ListOfArguments { get; set; }
protected override void CacheMetadata(CodeActivityMetadata metadata)
{
base.CacheMetadata(metadata);
//!!! Liste mit Argumenten erst nach base.CacheMetadata setzen, da sie sonst verworfen werden !!!
int i = 0;
foreach (var argument in ListOfArguments)
{
//Name muss eindeutig sein
var argumentName = $"argument{++i}";
var runtimeArg = new RuntimeArgument(argumentName, typeof(string), ArgumentDirection.In, false);
metadata.Bind(argument, runtimeArg);
metadata.AddArgument(runtimeArg);
}
protected override void Execute(CodeActivityContext a_oContext)
{
foreach (InArgument<string> item in ListOfArguments)
{
string s = item.Get(a_oContext);
}
}
} |