123456789101112131415161718192021222324252627 |
- using FastGithub.Dns;
- using Microsoft.Extensions.DependencyInjection;
- using Microsoft.Extensions.DependencyInjection.Extensions;
- using System.Runtime.Versioning;
- namespace FastGithub
- {
- /// <summary>
- /// 服务注册扩展
- /// </summary>
- public static class ServiceCollectionExtensions
- {
- /// <summary>
- /// 注册dns拦截器
- /// </summary>
- /// <param name="services"></param>
- /// <returns></returns>
- [SupportedOSPlatform("windows")]
- public static IServiceCollection AddDnsInterceptor(this IServiceCollection services)
- {
- services.TryAddSingleton<DnsInterceptor>();
- services.AddSingleton<IConflictValidator, HostsConflictValidator>();
- services.AddSingleton<IConflictValidator, ProxyConflictValidtor>();
- return services.AddHostedService<DnsInterceptHostedService>();
- }
- }
- }
|