Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Codeeffects 元素<;方法>;从XML实例化规则后,GetRuleXml()中的方法名称不正确_Codeeffects - Fatal编程技术网

Codeeffects 元素<;方法>;从XML实例化规则后,GetRuleXml()中的方法名称不正确

Codeeffects 元素<;方法>;从XML实例化规则后,GetRuleXml()中的方法名称不正确,codeeffects,Codeeffects,我动态地操作规则XML。不幸的是,从XML(RuleModel.create)创建规则后,生成的XML(RuleModel.GetRuleXml())将丢失操作方法名称。我可以通过将规则重新绑定到类型来解决这个问题,但这似乎是多余的,因为类型已经是Create方法的一个参数 下面是几个XUnit测试来说明这个问题:(CodeEffects版本5.0.10.2) 使用系统; 使用codeffects.Rule.Attributes; 使用codeffects.Rule.Models; 使用Xuni

我动态地操作规则XML。不幸的是,从XML(
RuleModel.create
)创建规则后,生成的XML(
RuleModel.GetRuleXml()
)将丢失操作方法名称。我可以通过将规则重新绑定到类型来解决这个问题,但这似乎是多余的,因为类型已经是Create方法的一个参数

下面是几个XUnit测试来说明这个问题:(CodeEffects版本5.0.10.2)

使用系统;
使用codeffects.Rule.Attributes;
使用codeffects.Rule.Models;
使用Xunit;
命名空间重编程步骤
{
公开课重考
{
[事实]
public void应该成功但失败()
{
//安排
var rule=RuleModel.Create(ExecutionRuleXml,typeof(ReproType));
rule.IsValid();
//表演
var ruleXml=rule.GetRuleXml();
//断言
//预期的XML应包含:
//实际XML包含:
包含(“MyAction”,ruleXml);
}
[事实]
public void应成功与重新绑定()
{
//安排
var rule=RuleModel.Create(ExecutionRuleXml,typeof(ReproType));
rule.BindSource(typeof(ReproType));//这将强制在XML中输入正确的方法名
rule.IsValid();
//表演
var ruleXml=rule.GetRuleXml();
//断言
包含(“MyAction”,ruleXml);
}
私有常量字符串ExecutionRuleXml=@“规则名称”;
}
公共类复制
{
公共字符串MyProperty{get;set;}
[行动]
公共无效MyAction(INTP)
{
控制台写入线(p);
}
}
}

此问题已在最新的次要版本中修复。更新您的NuGet参考。

此问题已在最新的次要版本中修复。更新你的NuGet引用。

你也使用最新的主脚本吗?@Alex我正在动态生成规则XML。如果你指的是网络控制,那么我没有使用网络控制。你也使用最新的主脚本吗?@Alex我正在动态生成规则XML。如果你指的是网络控制的话,我没有使用网络控制。最新版本修复了最初的问题。谢谢不过,我注意到XML名称空间发生了突破性的变化。在最新版本中,默认名称空间从
http://codeeffects.com/schemas/rule/41
(http)至
https://codeeffects.com/schemas/rule/41
(https),它破坏了我的代码。是故意的吗?是的,是故意的。这是如何改变您的代码的?我的代码需要知道名称空间才能生成和读取CodeEffects XML文档。没什么大不了的。我只是想确认一下。谢谢。最新版本修复了原来的问题。谢谢不过,我注意到XML名称空间发生了突破性的变化。在最新版本中,默认名称空间从
http://codeeffects.com/schemas/rule/41
(http)至
https://codeeffects.com/schemas/rule/41
(https),它破坏了我的代码。是故意的吗?是的,是故意的。这是如何改变您的代码的?我的代码需要知道名称空间才能生成和读取CodeEffects XML文档。没什么大不了的。我只是想确认一下。谢谢