src/EasyFrameWork/RuleEngine/RuleProviders/CommonMethodsRuleProvider.cs
(开头部分) 11KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/* http://www.zkea.net/
* Copyright (c) ZKEASOFT. All rights reserved.
* http://www.zkea.net/licenses */
using System;
using System.Collections;
using System.Linq;
namespace Easy.RuleEngine.RuleProviders
{
public class CommonMethodsRuleProvider : IRuleProvider
{
const string _Equals = "Equals";
const string NotEquals = "NotEquals";
const string StartsWith = "StartsWith";
const string EndsWith = "EndsWith";
const string Contains = "Contains";
const string NotStartsWith = "NotStartsWith";
const string NotEndsWith = "NotEndsWith";
const string NotContains = "NotContains";
const string IsBlank = "IsBlank";
const string IsNotBlank = "IsNotBlank";
const string In = "In";
const string NotIn = "NotIn";
const string GreaterThan = "GreaterThan";
const string GreaterThanOrEquals = "GreaterThanOrEquals";
const string LessThan = "LessThan";
const string LessThanOrEquals = "LessThanOrEquals";
public virtual bool IsEquals(object value1, object value2)
{
if (value1 is string && value2 is string)
{
return ((string)value1).Equals((string)value2, StringComparison.OrdinalIgnoreCase);
}
else if (value1 == null && value2 == null)
{
return true;
}
else
{
return value1 != null && value1.Equals(value2);
}
}
public virtual void Process(RuleContext ruleContext, object workContext)
{
switch (ruleContext.FunctionName)
{
case _Equals:
{
if (ruleContext.Arguments.Length == 2)
{
ruleContext.Result = IsEquals(ruleContext.Arguments[0], ruleContext.Arguments[1]);
}
break;
}
case NotEquals:
{
if (ruleContext.Arguments.Length == 2)
后面还有 177 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。