2020-12-28 14:55:48 +08:00
|
|
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Hncore.Pass.MsgCenter.Util
|
|
|
|
|
|
{
|
|
|
|
|
|
public class ServiceContext
|
|
|
|
|
|
{
|
|
|
|
|
|
private static IServiceProvider _serviceProvider;
|
|
|
|
|
|
public static void Initialize(IServiceProvider serviceProvider)
|
|
|
|
|
|
{
|
|
|
|
|
|
_serviceProvider = serviceProvider;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 构建实例
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <typeparam name="T"></typeparam>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
public static T Resolve<T>() where T : class
|
|
|
|
|
|
{
|
|
|
|
|
|
return _serviceProvider.GetService<T>();
|
|
|
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 构建类型
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="type"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
public static object Resolve(Type type)
|
|
|
|
|
|
{
|
|
|
|
|
|
return _serviceProvider.GetService(type);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2020-10-07 20:25:03 +08:00
|
|
|
|
}
|