CodeEffects - 升级后现有规则错误
CodeEffects - Existing rules error after upgrade
将 codeeffects 从 4.3.2.6 升级到 4.3.6.7 后,具有任何编码操作或方法的现有规则无法加载并出现错误:
"无法在当前源对象中找到突出显示的规则元素。请更新此规则或回滚对源对象所做的所有更改。"
在规则编辑器中遵循以下内容
如何克服这个问题?
在升级之前,规则没有抛出任何错误,并且按预期对数据采取了行动。
下面的错误和 XML 来自下载的演示。更新演示后,我遇到了同样的问题。
规则的XML:
<?xml version="1.0" encoding="utf-8"?>
<codeeffects xmlns="http://codeeffects.com/schemas/rule/41" xmlns:ui="http://codeeffects.com/schemas/ui/4">
<rule id="2eb43e80-320c-496f-bf50-7ead12bae886" webrule="4.1.6.4" utc="2014-08-05T15:29:26.3909" type="CodeEffects.Rule.Demo.Bre.Mvc.Models.Patient, CodeEffects.Rule.Demo.Bre.Mvc.2013, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" eval="true">
<name>Check Date</name>
<definition>
<condition type="equal">
<method name="IsToday" type="CodeEffects.Rule.Demo.Bre.Mvc.Services.PatientService, CodeEffects.Rule.Demo.Bre.Mvc.2013, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
<value type="System.Nullable`1[[System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]">2014-08-06T00:00:00.0000</value>
</method>
<value type="System.Boolean">true</value>
</condition>
</definition>
<format>
<lines />
</format>
</rule>
</codeeffects>
我尝试更新 XML 中的 webrule="4.1.6.4" 值以匹配新版本,但没有成功。
首先,请检查您的项目是否实际声明了 "missing" 方法。然后 post 你的规则 XML 在这里,如果整个规则太大,至少它使用该方法的部分。
将 codeeffects 从 4.3.2.6 升级到 4.3.6.7 后,具有任何编码操作或方法的现有规则无法加载并出现错误:
"无法在当前源对象中找到突出显示的规则元素。请更新此规则或回滚对源对象所做的所有更改。"
在规则编辑器中遵循以下内容
如何克服这个问题?
在升级之前,规则没有抛出任何错误,并且按预期对数据采取了行动。 下面的错误和 XML 来自下载的演示。更新演示后,我遇到了同样的问题。
规则的XML:
<?xml version="1.0" encoding="utf-8"?>
<codeeffects xmlns="http://codeeffects.com/schemas/rule/41" xmlns:ui="http://codeeffects.com/schemas/ui/4">
<rule id="2eb43e80-320c-496f-bf50-7ead12bae886" webrule="4.1.6.4" utc="2014-08-05T15:29:26.3909" type="CodeEffects.Rule.Demo.Bre.Mvc.Models.Patient, CodeEffects.Rule.Demo.Bre.Mvc.2013, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" eval="true">
<name>Check Date</name>
<definition>
<condition type="equal">
<method name="IsToday" type="CodeEffects.Rule.Demo.Bre.Mvc.Services.PatientService, CodeEffects.Rule.Demo.Bre.Mvc.2013, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
<value type="System.Nullable`1[[System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]">2014-08-06T00:00:00.0000</value>
</method>
<value type="System.Boolean">true</value>
</condition>
</definition>
<format>
<lines />
</format>
</rule>
</codeeffects>
我尝试更新 XML 中的 webrule="4.1.6.4" 值以匹配新版本,但没有成功。
首先,请检查您的项目是否实际声明了 "missing" 方法。然后 post 你的规则 XML 在这里,如果整个规则太大,至少它使用该方法的部分。