Przeglądaj źródła

丰富DI扩展

tags/v2.6.6
yedajiang44 10 miesięcy temu
rodzic
commit
721eae3e24
2 zmienionych plików z 15 dodań i 8 usunięć
  1. +10
    -5
      src/JT808.Protocol/DependencyInjectionExtensions.cs
  2. +5
    -3
      src/JT808.Protocol/JT808.Protocol.xml

+ 10
- 5
src/JT808.Protocol/DependencyInjectionExtensions.cs Wyświetl plik

@@ -22,7 +22,7 @@ namespace JT808.Protocol
public static IJT808Builder AddJT808Configure(this IServiceCollection services, IJT808Config jT808Config)
{
services.AddSingleton(jT808Config.GetType(), jT808Config);
return new DefaultBuilder(services,jT808Config);
return new DefaultBuilder(services, jT808Config);
}
/// <summary>
/// 注册808配置
@@ -41,9 +41,10 @@ namespace JT808.Protocol
/// <typeparam name="TJT808Config"></typeparam>
/// <param name="services"></param>
/// <returns></returns>
public static IJT808Builder AddJT808Configure<TJT808Config>(this IServiceCollection services)where TJT808Config : IJT808Config,new()
public static IJT808Builder AddJT808Configure<TJT808Config>(this IServiceCollection services, Action<TJT808Config> options = null) where TJT808Config : IJT808Config, new()
{
var config = new TJT808Config();
options?.Invoke(config);
services.AddSingleton(typeof(TJT808Config), config);
return new DefaultBuilder(services, config);
}
@@ -52,10 +53,12 @@ namespace JT808.Protocol
/// </summary>
/// <typeparam name="TJT808Config"></typeparam>
/// <param name="builder"></param>
/// <param name="options"></param>
/// <returns></returns>
public static IJT808Builder AddJT808Configure<TJT808Config>(this IJT808Builder builder) where TJT808Config : IJT808Config, new()
public static IJT808Builder AddJT808Configure<TJT808Config>(this IJT808Builder builder, Action<TJT808Config> options = null) where TJT808Config : IJT808Config, new()
{
var config = new TJT808Config();
options?.Invoke(config);
builder.Services.AddSingleton(typeof(TJT808Config), config);
return builder;
}
@@ -63,12 +66,14 @@ namespace JT808.Protocol
/// 注册808配置
/// </summary>
/// <param name="services"></param>
/// <param name="options"></param>
/// <returns></returns>
public static IJT808Builder AddJT808Configure(this IServiceCollection services)
public static IJT808Builder AddJT808Configure(this IServiceCollection services, Action<IJT808Config> options = null)
{
DefaultGlobalConfig config = new DefaultGlobalConfig();
options?.Invoke(config);
services.AddSingleton<IJT808Config>(config);
return new DefaultBuilder(services,config);
return new DefaultBuilder(services, config);
}
}
}

+ 5
- 3
src/JT808.Protocol/JT808.Protocol.xml Wyświetl plik

@@ -37,7 +37,7 @@
<param name="jT808Config"></param>
<returns></returns>
</member>
<member name="M:JT808.Protocol.DependencyInjectionExtensions.AddJT808Configure``1(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
<member name="M:JT808.Protocol.DependencyInjectionExtensions.AddJT808Configure``1(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{``0})">
<summary>
注册808配置
</summary>
@@ -45,19 +45,21 @@
<param name="services"></param>
<returns></returns>
</member>
<member name="M:JT808.Protocol.DependencyInjectionExtensions.AddJT808Configure``1(JT808.Protocol.IJT808Builder)">
<member name="M:JT808.Protocol.DependencyInjectionExtensions.AddJT808Configure``1(JT808.Protocol.IJT808Builder,System.Action{``0})">
<summary>
注册808配置
</summary>
<typeparam name="TJT808Config"></typeparam>
<param name="builder"></param>
<param name="options"></param>
<returns></returns>
</member>
<member name="M:JT808.Protocol.DependencyInjectionExtensions.AddJT808Configure(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
<member name="M:JT808.Protocol.DependencyInjectionExtensions.AddJT808Configure(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{JT808.Protocol.IJT808Config})">
<summary>
注册808配置
</summary>
<param name="services"></param>
<param name="options"></param>
<returns></returns>
</member>
<member name="T:JT808.Protocol.Enums.JT808Alarm">


Ładowanie…
Anuluj
Zapisz