我想创建一个自定义活动,我们的工程师可以创建wf定义,编写一些小代码块,如创建/转换数据结构,而无需为每个编写,编译和部署代码活动。 / p>
所以,我需要的是类似于使用ExpressionTextBox多线的自定义活动或CodeEditor(使用智能感知)来内联编写此代码,以便在我的自定义活动的Execute方法中执行。
你认为有可能吗?
提前致谢,
马克
答案 0 :(得分:0)
你不能这样做。在Wf4中,代码中的标记,XAML和实现之间存在完全分离。
答案 1 :(得分:0)
这可能吗?可能。
您必须提供体验的每个部分。这意味着,您必须提供可以配置脚本的自定义Activity,以便在运行时编译和执行,UI中此Activity的代码编辑体验,以及报告错误的某种类型的代码验证工具。代码给用户。
对于编辑器,您可以使用在SharpDevelop中找到的WPF代码编辑器AvalonEdit。我之前没有使用它,所以我不能告诉你为了使智能感知和验证有效,你需要做多少工作。
在运行时,您可以使用CSharpCodeProvider编译代码,然后在运行时执行它。 Skeet为他的Snippy应用you can get the source here.
做了这个所以你可以做到这一点。经过多年的努力和艰辛。
我认为更好的解决方案是提供一些小型活动,它们代表运行时编码体验的原子组件,可用于组合您希望用代码编写的逻辑。这更符合WF的精神。