Files
CRSim/CRSim.Core/Abstractions/PluginBase.cs
2025-07-26 18:02:55 +08:00

21 lines
701 B
C#

using CRSim.Core.Models.Plugin;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace CRSim.Core.Abstractions;
public abstract class PluginBase
{
/// <summary>
/// 当前插件的信息
/// </summary>
public PluginInfo Info { get; internal set; } = null!;
public abstract Type ViewModel { get; }
public abstract Type View { get; }
/// <summary>
/// 初始化插件。一般在这个方法中完成插件的各项服务的注册。
/// </summary>
/// <param name="context"></param>
/// <param name="services"></param>
public abstract void Initialize(HostBuilderContext context, IServiceCollection services);
}