如何移动自定义模拟器规则定义



自定义模拟器规则的DLL、版本和命名空间似乎已编码到.ptd.内的开发状态中

我想把自定义规则的代码等移到一个新的命名空间/DLL中。

我们使用序列化绑定代码为自定义域对象样式处理此问题。是否可以对自定义模拟器规则进行同样的操作?

干杯,

Neal

罗伯特的答案:

Petrel 2012为工作步骤和流程提供了一个新属性:您需要实现UniqueIdCore方法,以提供一个固定且稳定的Guid形式的全局(跨所有项目)唯一ID。这个UniqueId将被序列化到Petrel项目中;它用于序列化工作流。在2012版本之前,如果更改工作步骤的程序集或命名空间,则序列化的工作流将被破坏。如果以后要更改工作步骤类型,只要提供相同的唯一标识符,就可以在不中断序列化工作流的情况下进行更改。

Neal的答案:

关于与同事的对话,这是一个arg-pack软化的标识字符串问题,因此不幸的是,这意味着您无法将其移动到其他程序集,甚至无法更改类名。现在只有一个半解决方案是可能的(没有检查):将arg包保留在旧的程序集/类名中,并移动其他所有内容,但这当然不是一个好的解决方案。

最新更新