Add API to configure CircuitOptions (#11166)
* Add API to configure CircuitOptions
This commit is contained in:
parent
b47b3e5ac6
commit
17c7ea95a2
|
|
@ -95,14 +95,15 @@ namespace Microsoft.Extensions.DependencyInjection
|
||||||
{
|
{
|
||||||
public static partial class ComponentServiceCollectionExtensions
|
public static partial class ComponentServiceCollectionExtensions
|
||||||
{
|
{
|
||||||
public static Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder AddServerSideBlazor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) { throw null; }
|
public static Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder AddServerSideBlazor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.AspNetCore.Components.Server.CircuitOptions> configure = null) { throw null; }
|
||||||
}
|
}
|
||||||
public partial interface IServerSideBlazorBuilder
|
public partial interface IServerSideBlazorBuilder
|
||||||
{
|
{
|
||||||
Microsoft.Extensions.DependencyInjection.IServiceCollection Services { get; }
|
Microsoft.Extensions.DependencyInjection.IServiceCollection Services { get; }
|
||||||
}
|
}
|
||||||
public static partial class ServerSizeBlazorBuilderExtensions
|
public static partial class ServerSideBlazorBuilderExtensions
|
||||||
{
|
{
|
||||||
|
public static Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder AddCircuitOptions(this Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder builder, System.Action<Microsoft.AspNetCore.Components.Server.CircuitOptions> configure) { throw null; }
|
||||||
public static Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder AddHubOptions(this Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder builder, System.Action<Microsoft.AspNetCore.SignalR.HubOptions> configure) { throw null; }
|
public static Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder AddHubOptions(this Microsoft.Extensions.DependencyInjection.IServerSideBlazorBuilder builder, System.Action<Microsoft.AspNetCore.SignalR.HubOptions> configure) { throw null; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
// Copyright (c) .NET Foundation. All rights reserved.
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||||
|
|
||||||
|
using System;
|
||||||
using Microsoft.AspNetCore.Builder;
|
using Microsoft.AspNetCore.Builder;
|
||||||
using Microsoft.AspNetCore.Components;
|
using Microsoft.AspNetCore.Components;
|
||||||
using Microsoft.AspNetCore.Components.Routing;
|
using Microsoft.AspNetCore.Components.Routing;
|
||||||
|
|
@ -23,8 +24,9 @@ namespace Microsoft.Extensions.DependencyInjection
|
||||||
/// Adds Server-Side Blazor services to the service collection.
|
/// Adds Server-Side Blazor services to the service collection.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="services">The <see cref="IServiceCollection"/>.</param>
|
/// <param name="services">The <see cref="IServiceCollection"/>.</param>
|
||||||
|
/// <param name="configure">A callback to configure <see cref="CircuitOptions"/>.</param>
|
||||||
/// <returns>An <see cref="IServerSideBlazorBuilder"/> that can be used to further customize the configuration.</returns>
|
/// <returns>An <see cref="IServerSideBlazorBuilder"/> that can be used to further customize the configuration.</returns>
|
||||||
public static IServerSideBlazorBuilder AddServerSideBlazor(this IServiceCollection services)
|
public static IServerSideBlazorBuilder AddServerSideBlazor(this IServiceCollection services, Action<CircuitOptions> configure = null)
|
||||||
{
|
{
|
||||||
var builder = new DefaultServerSideBlazorBuilder(services);
|
var builder = new DefaultServerSideBlazorBuilder(services);
|
||||||
|
|
||||||
|
|
@ -76,6 +78,11 @@ namespace Microsoft.Extensions.DependencyInjection
|
||||||
services.AddScoped<IComponentContext, RemoteComponentContext>();
|
services.AddScoped<IComponentContext, RemoteComponentContext>();
|
||||||
services.AddScoped<AuthenticationStateProvider, FixedAuthenticationStateProvider>();
|
services.AddScoped<AuthenticationStateProvider, FixedAuthenticationStateProvider>();
|
||||||
|
|
||||||
|
if (configure != null)
|
||||||
|
{
|
||||||
|
services.Configure<CircuitOptions>(configure);
|
||||||
|
}
|
||||||
|
|
||||||
return builder;
|
return builder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,31 @@ namespace Microsoft.Extensions.DependencyInjection
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Provides options for configuring Server-Side Blazor.
|
/// Provides options for configuring Server-Side Blazor.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class ServerSizeBlazorBuilderExtensions
|
public static class ServerSideBlazorBuilderExtensions
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Adds options to configure circuits.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="builder">The <see cref="IServerSideBlazorBuilder"/>.</param>
|
||||||
|
/// <param name="configure">A callback to configure <see cref="CircuitOptions"/>.</param>
|
||||||
|
/// <returns>The <see cref="IServerSideBlazorBuilder"/>.</returns>
|
||||||
|
public static IServerSideBlazorBuilder AddCircuitOptions(this IServerSideBlazorBuilder builder, Action<CircuitOptions> configure)
|
||||||
|
{
|
||||||
|
if (builder == null)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException(nameof(builder));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (configure == null)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException(nameof(configure));
|
||||||
|
}
|
||||||
|
|
||||||
|
builder.Services.Configure<CircuitOptions>(configure);
|
||||||
|
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds hub options for the configuration of the SignalR Hub used by Server-Side Blazor.
|
/// Adds hub options for the configuration of the SignalR Hub used by Server-Side Blazor.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
Loading…
Reference in New Issue