vsacondition.cs

来自「基于DotNet的工作流引擎实现」· CS 代码 · 共 66 行

CS
66
字号
using System;
using System.Collections;
using DotNetTools.PropertySet;

namespace DotNetTools.Workflow.Util.Vsa
{

	/// <summary>
	/// 
	/// </summary>
	/// <author>jjx</author>
	public class VsaCondition : VsaBase,ICondition
	{
		
		
		public bool PassesCondition(IDictionary transientVars, IDictionary args, IPropertySet ps)
		{

			IDictionary objects=new Hashtable();
			objects.Add("transientVars",transientVars);
			objects.Add("args",args);
			objects.Add("propertySet",ps);

			if (transientVars!=null)
			{

				objects.Add("entry",transientVars["entry"]);
				objects.Add("context",transientVars["context"]);
				objects.Add("jn",transientVars["jn"]);
				
		
			}	
			Prepared(args,objects);
		
			
			try 
			{
				Object o=control.Invoke("module1.execute",new object[]{});
				
				if (log.IsDebugEnabled)
					log.Debug(o);
				if (o==null)
					return false;
				return bool.Parse(o.ToString());

			} 
			catch (Exception e) 
			{
				String message = "VSA script/condition could not run";
			
				throw new WorkflowException(message, e);
			}
			finally
			{
				control.Close();
			}
			
		}

		public VsaCondition()
		{
			
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?