using GFramework.Core.Abstractions.architecture;
using GFramework.Core.Abstractions.model;
namespace GFramework.Core.model;
///
/// 抽象模型基类,实现IModel接口,提供模型的基本架构支持
///
public abstract class AbstractModel : IModel
{
///
/// 模型所属的架构实例
///
protected IArchitectureContext _context { get; private set; }
///
/// 初始化模型,调用抽象方法OnInit执行具体初始化逻辑
///
void IModel.Init()
{
OnInit();
}
public void SetContext(IArchitectureContext context)
{
_context = context;
}
public IArchitectureContext GetContext()
{
return _context;
}
///
/// 抽象初始化方法,由子类实现具体的初始化逻辑
///
protected abstract void OnInit();
}