改写NodeModelBase类,使其继承Serein.Library.Api下的IFlowNode接口,而实现类迁移到NodeModel项目,方便后续节点运行逻辑修改时不用重新编译类库。

This commit is contained in:
fengjiayi
2025-05-31 12:15:01 +08:00
parent cc0b084c84
commit 84390b574f
36 changed files with 562 additions and 121 deletions

View File

@@ -21,7 +21,7 @@ namespace Serein.Library
/// 对应的节点
/// </summary>
[PropertyInfo(IsProtection = true)]
private NodeModelBase _nodeModel;
private IFlowNode _nodeModel;
/// <summary>
/// 对应的程序集
@@ -179,7 +179,7 @@ namespace Serein.Library
/// 生成元数据
/// </summary>
/// <param name="nodeModel">标识属于哪个节点</param>
public MethodDetails(NodeModelBase nodeModel)
public MethodDetails(IFlowNode nodeModel)
{
NodeModel = nodeModel;
}
@@ -226,10 +226,10 @@ namespace Serein.Library
/// 从DLL拖动出来时从元数据拷贝新的实例作为属于节点独享的方法描述
/// </summary>
/// <returns></returns>
public MethodDetails CloneOfNode( NodeModelBase nodeModel)
public MethodDetails CloneOfNode( IFlowNode nodeModel)
{
// this => 是元数据
var md = new MethodDetails( nodeModel) // 创建新节点时拷贝实例
var md = new MethodDetails(nodeModel) // 创建新节点时拷贝实例
{
AssemblyName = this.AssemblyName, // 拷贝
//ActingInstance = this.ActingInstance,