using GFramework.Core.Abstractions.architecture; namespace GFramework.Core.architecture; /// /// 基于 GameContext 的默认上下文提供者 /// public sealed class GameContextProvider : IArchitectureContextProvider { /// /// 获取当前的架构上下文(返回第一个注册的架构上下文) /// /// 架构上下文实例 public IArchitectureContext GetContext() { return GameContext.GetFirstArchitectureContext(); } /// /// 尝试获取指定类型的架构上下文 /// /// 架构上下文类型 /// 输出的上下文实例 /// 如果成功获取则返回true,否则返回false public bool TryGetContext(out T? context) where T : class, IArchitectureContext { return GameContext.TryGet(out context); } }