Files
serein-flow/FlowStartTool/FlowEnv.cs
fengjiayi 152077e9b5 1. 重新设计了Generate项目及相关特性的命名,避免与其他类型混淆。
2. 补充了部分注释。
3. 修改了删除容器节点时,容器内子节点未正确删除的问题。
2025-07-30 21:15:07 +08:00

36 lines
1.2 KiB
C#

using Serein.Library;
using Serein.Library.Api;
using Serein.Library.Utils;
using Serein.NodeFlow.Env;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Serein.FlowStartTool
{
internal class FlowEnv
{
public readonly IFlowEnvironment flowEnvironment = new FlowEnvironment();
public bool IsRuning;
public void StartFlow(SereinProjectData flowProjectData, string fileDataPath)
{
IsRuning = true;
SynchronizationContext? uiContext = SynchronizationContext.Current; // 在UI线程上获取UI线程上下文信息
var uIContextOperation = new UIContextOperation(uiContext); // 封装一个调用UI线程的工具类
flowEnvironment.SetUIContextOperation(uIContextOperation);
flowEnvironment.LoadProject(fileDataPath); // 加载项目
flowEnvironment.Event.EnvOutput += (infoType, value) =>
{
Console.WriteLine($"{DateTime.Now} [{infoType}] : {value}{Environment.NewLine}");
};
//await flowEnvironment.StartRemoteServerAsync(7525); // 启动 web socket 监听远程请求
IsRuning = false;
}
}
}