检测主机工作流的语言(C# 或 VB)

Detecting the language (C# or VB) of a host Workflow

提问人:Alexandre Perez 提问时间:5/2/2021 更新时间:5/2/2021 访问量:83

问:

我正在开发一个自定义活动,该活动在内部(在我的活动设计器中)有一个使用代码活动的指令,我用它来表示字符串数组,例如:VisualBasicValue<string[]>{ "a", "b", "c" }

但是,在用 C# 编写的工作流项目中,我们需要 use 而不是 ,并将表达式写成:CSharpValue<string[]>VisualBasicValue<string[]>new [] { "a", "b", "c" }

如何确定在宿主工作流中设置了哪种语言,以便选择正确的代码活动?

我读到 C# 项目在工作流中具有属性/节点 sap2010:ExpressionActivityEditor.ExpressionActivityEditor=“C#”,但我不知道如何从活动设计中获取此信息,我也不知道这是否是最好的方法。

总而言之,我正在寻找的是允许我做这种逻辑的东西:

CodeActivity<string[]> code = null;

if (__some_way_to_know_if_is_CSharp__)
{
    code = new CSharpValue<string[]> {
        ExpressionText = "new [] { 'a', 'b', 'c' }"
    }
}
else
{
    code = new VisualBasicValue<string[]> {
        ExpressionText = "{ 'a', 'b', 'c' }"
    }
}

ModelItem.Properties["Items"].SetValue(new InArgument<IEnumerable<string>>(code))

谢谢!

C# vb.net 4 工作流基础

评论


答: 暂无答案