GFramework/GFramework.Core/rule/ContextAwareBase.cs
GwWuYou 2dea63e69f refactor(abstractions): 将抽象接口迁移至独立项目并更新引用
- 将架构相关接口从 GFramework.Core 迁移至 GFramework.Core.Abstractions 项目
- 更新项目引用配置,添加对抽象层项目的项目引用
- 修正命名空间引用,使用新的抽象层命名空间
- 调整类型定义,将 List<T> 替换为更通用的 IList<T> 接口
- 修复控制器接口命名空间错误
- 添加必要的 using 语句以支持新的抽象层引用
2025-12-28 10:37:18 +08:00

32 lines
1022 B
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 GFramework.Core.Abstractions.architecture;
using GFramework.Core.Abstractions.rule;
namespace GFramework.Core.rule;
/// <summary>
/// 上下文感知基类实现了IContextAware接口为需要感知架构上下文的类提供基础实现
/// </summary>
public abstract class ContextAwareBase : IContextAware
{
/// <summary>
/// 获取当前实例的架构上下文
/// </summary>
protected IArchitectureContext Context { get; private set; } = null!;
/// <summary>
/// 设置架构上下文的实现方法,由框架调用
/// </summary>
/// <param name="context">要设置的架构上下文实例</param>
void IContextAware.SetContext(IArchitectureContext context)
{
Context = context;
OnContextReady();
}
/// <summary>
/// 当上下文准备就绪时调用的虚方法,子类可以重写此方法来执行上下文相关的初始化逻辑
/// </summary>
protected virtual void OnContextReady()
{
}
}