Files
serein-flow/Library/Attributes/AutoRegisterAttribute.cs
fengjiayi 8dc7f5dd9b 调整了Library文件结构;
源代码生成新增了参数验证方法;
修改了ParamterDetails的定义
2025-07-29 18:36:43 +08:00

27 lines
1.3 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using Serein.Library;
using System;
namespace Serein.Library
{
/// <summary>
/// <para>启动流程时会将标记了该特性的类自动注册到IOC容器中从而无需手动进行注册绑定。</para>
/// <para>流程启动后IOC容器会进行5次注册绑定。</para>
/// <para>第1次注册绑定初始化所有节点所属的类[DynamicFlow]标记的类)。</para>
/// <para>第2次注册绑定※初始化所有[AutoRegister(Class=FlowInit)]的类。</para>
/// <para>第3次注册绑定调用所有Init节点后进行注册绑定。</para>
/// <para>第4次注册绑定※初始化所有[AutoRegister(Class=FlowLoading)]的类</para>
/// <para>第5次注册绑定调用所有Load节点后进行注册绑定。</para>
/// <para>需要注意的是在第1次进行注册绑定的过程中如果类的构造函数存在入参那么也会将入参自动创建实例并托管到IOC容器中。</para>
/// </summary>
[AttributeUsage(AttributeTargets.Class)]
public sealed class AutoRegisterAttribute : Attribute
{
public AutoRegisterAttribute(RegisterSequence Class = RegisterSequence.FlowInit)
{
this.Class = Class;
}
public RegisterSequence Class ;
}
}