mirror of
https://gitee.com/langsisi_admin/serein-flow
synced 2026-03-02 15:50:47 +08:00
1. 移除了FlipflopContext,统一流程API
2. Script项目脚本修复了 RawString 原始字符串存在的问题 3. Script使用了ValueNode统一了值类型节点,为后续扩展更多的值类型做准备 4. TypeHelper.ToTypeOfString()方法中添加了部分值类型的"Type[]”与“List<Type>”的显式定义,用于脚本在类型中定义数组成员 5. Script项目脚本默认挂载的json方法拆分为jsonObj(String)与jsonStr(Object)以支持序列化与反序列化 6. 项目保存为dnf项目文件时,将不再保存名称为”Default"并且没有节点的画布,避免重复保存时默认画布增多。
This commit is contained in:
@@ -27,6 +27,14 @@ namespace Serein.Library
|
||||
RunState = RunState.Running;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>用于同一个流程上下文中共享、存储任意数据</para>
|
||||
/// <para>流程完毕时,如果存储的对象实现了 IDisposable 接口,将会自动调用</para>
|
||||
/// <para>谨慎使用,注意数据的生命周期和内存管理</para>
|
||||
/// </summary>
|
||||
public object? Tag { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否记录流程调用信息
|
||||
/// </summary>
|
||||
@@ -78,7 +86,6 @@ namespace Serein.Library
|
||||
private readonly ConcurrentDictionary<string, ConcurrentDictionary<int, object>> dictNodeParams = new ConcurrentDictionary<string, ConcurrentDictionary<int, object>>();
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 记录流程调用信息
|
||||
@@ -255,11 +262,15 @@ namespace Serein.Library
|
||||
/// </summary>
|
||||
public void Reset()
|
||||
{
|
||||
if(Tag is IDisposable disposable)
|
||||
{
|
||||
disposable.Dispose(); // 释放 Tag 中的资源
|
||||
}
|
||||
this.dictNodeFlowData?.Clear();
|
||||
ExceptionOfRuning = null;
|
||||
flowInvokeInfos.Clear();
|
||||
NextOrientation = ConnectionInvokeType.None;
|
||||
RunState = RunState.Running;
|
||||
flowInvokeInfos.Clear();
|
||||
Guid = global::System.Guid.NewGuid().ToString();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user