mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 03:04:29 +08:00
- 将IocContainer的Init方法重命名为OnContextReady并设为protected override - 重构AbstractModel中的Architecture字段为_context属性并实现IContextAware接口 - 移除GetArchitecture和SetArchitecture方法,添加GetContext和SetContext方法 - 为IModel接口添加IContextAware继承 - 添加TestArchitecture、TestModel和TestSystem测试类 - 创建ArchitectureInitializationTests测试用例验证组件初始化 - 更新项目文件添加NUnit包引用和测试项目配置 - 在解决方案文件中添加测试项目引用
39 lines
940 B
C#
39 lines
940 B
C#
using GFramework.Core.Abstractions.architecture;
|
||
using GFramework.Core.Abstractions.model;
|
||
|
||
namespace GFramework.Core.model;
|
||
|
||
/// <summary>
|
||
/// 抽象模型基类,实现IModel接口,提供模型的基本架构支持
|
||
/// </summary>
|
||
public abstract class AbstractModel : IModel
|
||
{
|
||
/// <summary>
|
||
/// 模型所属的架构实例
|
||
/// </summary>
|
||
protected IArchitectureContext _context { get; private set; }
|
||
|
||
/// <summary>
|
||
/// 初始化模型,调用抽象方法OnInit执行具体初始化逻辑
|
||
/// </summary>
|
||
void IModel.Init()
|
||
{
|
||
OnInit();
|
||
}
|
||
|
||
public void SetContext(IArchitectureContext context)
|
||
{
|
||
_context = context;
|
||
}
|
||
|
||
public IArchitectureContext GetContext()
|
||
{
|
||
return _context;
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 抽象初始化方法,由子类实现具体的初始化逻辑
|
||
/// </summary>
|
||
protected abstract void OnInit();
|
||
} |