21 lines
664 B
C#
21 lines
664 B
C#
using MAX.Framework.Interfaces;
|
|
|
|
namespace MAX.Framework.DependencyInjection
|
|
{
|
|
/// <summary>
|
|
/// 模块注册表:保存 <c>AddStoreHub()</c> 阶段发现(并按优先级排序)的模块实例。
|
|
/// 它被注册进容器,好让 <c>app.UseStoreHubModules()</c> 在 <c>builder.Build()</c> 之后拿到
|
|
/// 「同一批实例」继续执行管道阶段,而不是重新反射创建一遍。
|
|
/// </summary>
|
|
internal sealed class ModuleRegistry
|
|
{
|
|
public ModuleRegistry(IReadOnlyList<IModule> modules)
|
|
{
|
|
Modules = modules;
|
|
}
|
|
|
|
/// <summary>按优先级降序排列的模块实例</summary>
|
|
public IReadOnlyList<IModule> Modules { get; }
|
|
}
|
|
}
|