48 lines
1.3 KiB
C#
48 lines
1.3 KiB
C#
|
|
using MAX.Core.Interfaces;
|
|
using MAX.Framework.Interfaces;
|
|
using Microsoft.AspNetCore.Builder;
|
|
using Microsoft.Extensions.Configuration;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Hosting;
|
|
using MySql.Data.MySqlClient;
|
|
|
|
namespace Store.Modules.CloudProduct
|
|
{
|
|
public class Module : IModule
|
|
{
|
|
/// <summary>
|
|
/// 本模块自己的配置文件
|
|
/// </summary>
|
|
public const string ConfigurationFileName = "appsettings.ImageCache.json";
|
|
|
|
public int Priority => IntPriority.Normal;
|
|
|
|
|
|
/// <summary>
|
|
/// 服务注册阶段(builder.Build() 之前):这里只能拿到容器和配置,碰不到 app
|
|
/// </summary>
|
|
public void AddModule(IHostApplicationBuilder host)
|
|
{
|
|
IServiceCollection services = host.Services;
|
|
IConfigurationManager configuration = host.Configuration;
|
|
|
|
if (!string.IsNullOrWhiteSpace(ConfigurationFileName))
|
|
{
|
|
string path = Path.IsPathRooted(ConfigurationFileName)? ConfigurationFileName: Path.Combine(AppContext.BaseDirectory, ConfigurationFileName);
|
|
configuration.AddJsonFile(path, optional: false, reloadOnChange: true);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 管道装配阶段(builder.Build() 之后、app.Run() 之前):这里可以挂中间件、解析容器里的服务
|
|
/// </summary>
|
|
public void UseModule(IApplicationBuilder app)
|
|
{
|
|
|
|
}
|
|
|
|
|
|
}
|
|
}
|