如何修改RuleAction中的内容

本文关键字:RuleAction 何修改 修改 | 更新日期: 2023-09-27 18:24:41

下面是我编写的代码。我需要修改rr 中可用的内容

例如:

 if rr.ThenAction = "this.MacroLoop.Current.Strategy.SubStrategy.Current.Block.AIN.HLOP = 0"

我需要将其修改为

   "rr.ThenAction = "this.MacroLoop.Current.Strategy.SubStrategy.Current.Block.AIN.HLOP = 1"
if (!ruleSet.Validate(rv))
{ 
List<System.Workflow.Activities.Rules.Rule> rulesList = new List<System.Workflow.Activities.Rules.Rule>(); 
rulesList = ruleSet.Rules.ToList();
foreach (System.Workflow.Activities.Rules.Rule rr in rulesList) 
{ 
    // I need to modify the content in rr

} 
}

非常感谢您的帮助。

如何修改RuleAction中的内容

我不确定,但你在寻找类似的东西吗;

 rulesList = ruleSet.Rules.ToList();
 for (int i = 0; i < rulesList.Count; i++)
        {
            rulesList[i] = "sddfs";
            if(rulesList[i].ThenAction == "this.MacroLoop.Current.Strategy.SubStrategy.Current.Block.AIN.HLOP = 0")
                {
                        rulesList[i].ThenAction = "this.MacroLoop.Current.Strategy.SubStrategy.Current.Block.AIN.HLOP = 1";
                }
        }

希望它能帮助。。。!!!

PS:如果您计划更改foreach中rr的值,那么它将不起作用,因为foreach是一个只读迭代器,可以动态迭代实现IEnumerable的类,但您可以使用item.value进行更改。