一. 创建方法
在流程设计器中点右键,弹出右键菜单选择“自定义代码”- “执行C#语句”。
二. 功能介绍
该功能的作用是执行文本框里的C#代码,由于执行C#语句功能经过了几次升级,在书写时有点细微的差别。
VG版本低于7.8时,在文本框里直接输入C#代码就可以执行,如
VG升级到7.8时,引入了默认方法Run,该方法及参数名不可用修改,C#代码必须放在Run方法里才可以执行,如
引入Run方法的好处是在Run方法外可以写其他方法,在Run内可以直接调用其外部的方法,例如
public void Run(Dictionary<string, string> stringDic, Dictionary<string, List<string>> listDic, Dictionary<string, int> intDic, Dictionary<string, Dictionary<string, string>> rowDic) { msg("弹出一个提示框"); } private void msg(string str) { MessageBox.Show(str); }
VG升级到8.2.1.0时出现了一个新类型的变量——表格变量,在C#里可以操作表格变量,所以Run方法里也新增了一个表格变量类型的参数tableDic,点击“粘贴默认代码”按钮即可载入默认的Run代码,把你要执行的C#代码粘贴到Run方法内即可执行。如
public void Run(Dictionary<string, string> stringDic, Dictionary<string, List<string>> listDic, Dictionary<string, int> intDic, Dictionary<string, Dictionary<string, string>> rowDic, Dictionary<string, DataTable> tableDic) { msg("弹出一个提示框"); } private void msg(string str) { MessageBox.Show(str); }
所以,在使用不同版本的VG时,特别要注意以上差别。
二. 示例
VG变量操作
public void Run(Dictionary<string, string> stringDic, Dictionary<string, List<string>> listDic, Dictionary<string, int> intDic, Dictionary<string, Dictionary<string, string>> rowDic, Dictionary<string, DataTable> tableDic) { //范例1:将集合变量中的每个成员值用逗号作为分隔符拼接成一个字符串,保存到一个文本变量中 //运行前先手动创建文本变量“我是文本变量”和集合变量“我是集合变量” stringDic["我是文本变量"] = string.Join(",", listDic["我是集合变量"].ToArray()); //范例2:计数器变量转换为文本型变量 //stringDic["文本"] = Convert.ToString(intDic["计数器"]); //范例3:获取一随机数 //Random ran = new Random(); //intDic["随机数字"] = ran.Next(1,8); }