Make options registerations post configure
This commit is contained in:
parent
e44cba9b75
commit
330823bed8
|
|
@ -14,10 +14,10 @@ using Microsoft.Extensions.Options;
|
||||||
namespace Microsoft.AspNetCore.Identity.UI
|
namespace Microsoft.AspNetCore.Identity.UI
|
||||||
{
|
{
|
||||||
internal class IdentityDefaultUIConfigureOptions :
|
internal class IdentityDefaultUIConfigureOptions :
|
||||||
IConfigureOptions<RazorPagesOptions>,
|
IPostConfigureOptions<RazorPagesOptions>,
|
||||||
IConfigureOptions<RazorViewEngineOptions>,
|
IPostConfigureOptions<RazorViewEngineOptions>,
|
||||||
IConfigureOptions<StaticFileOptions>,
|
IPostConfigureOptions<StaticFileOptions>,
|
||||||
IConfigureNamedOptions<CookieAuthenticationOptions>
|
IPostConfigureOptions<CookieAuthenticationOptions>
|
||||||
{
|
{
|
||||||
public IdentityDefaultUIConfigureOptions(IHostingEnvironment environment)
|
public IdentityDefaultUIConfigureOptions(IHostingEnvironment environment)
|
||||||
{
|
{
|
||||||
|
|
@ -26,13 +26,27 @@ namespace Microsoft.AspNetCore.Identity.UI
|
||||||
|
|
||||||
public IHostingEnvironment Environment { get; }
|
public IHostingEnvironment Environment { get; }
|
||||||
|
|
||||||
public void Configure(RazorPagesOptions options) => options.AllowAreas = true;
|
public void PostConfigure(string name, RazorPagesOptions options)
|
||||||
|
|
||||||
public void Configure(RazorViewEngineOptions options) =>
|
|
||||||
options.FileProviders.Add(new ManifestEmbeddedFileProvider(GetType().Assembly));
|
|
||||||
|
|
||||||
public void Configure(StaticFileOptions options)
|
|
||||||
{
|
{
|
||||||
|
name = name ?? throw new ArgumentNullException(nameof(name));
|
||||||
|
options = options ?? throw new ArgumentNullException(nameof(options));
|
||||||
|
|
||||||
|
options.AllowAreas = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PostConfigure(string name, RazorViewEngineOptions options)
|
||||||
|
{
|
||||||
|
name = name ?? throw new ArgumentNullException(nameof(name));
|
||||||
|
options = options ?? throw new ArgumentNullException(nameof(options));
|
||||||
|
|
||||||
|
options.FileProviders.Add(new ManifestEmbeddedFileProvider(GetType().Assembly));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PostConfigure(string name, StaticFileOptions options)
|
||||||
|
{
|
||||||
|
name = name ?? throw new ArgumentNullException(nameof(name));
|
||||||
|
options = options ?? throw new ArgumentNullException(nameof(options));
|
||||||
|
|
||||||
// Basic initialization in case the options weren't initialized by any other component
|
// Basic initialization in case the options weren't initialized by any other component
|
||||||
options.ContentTypeProvider = options.ContentTypeProvider ?? new FileExtensionContentTypeProvider();
|
options.ContentTypeProvider = options.ContentTypeProvider ?? new FileExtensionContentTypeProvider();
|
||||||
if (options.FileProvider == null && Environment.WebRootFileProvider == null)
|
if (options.FileProvider == null && Environment.WebRootFileProvider == null)
|
||||||
|
|
@ -47,12 +61,10 @@ namespace Microsoft.AspNetCore.Identity.UI
|
||||||
options.FileProvider = new CompositeFileProvider(options.FileProvider, filesProvider);
|
options.FileProvider = new CompositeFileProvider(options.FileProvider, filesProvider);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Configure(string name, CookieAuthenticationOptions options)
|
public void PostConfigure(string name, CookieAuthenticationOptions options)
|
||||||
{
|
{
|
||||||
if (options == null)
|
name = name ?? throw new ArgumentNullException(nameof(name));
|
||||||
{
|
options = options ?? throw new ArgumentNullException(nameof(options));
|
||||||
throw new ArgumentNullException(nameof(options));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (string.Equals(IdentityConstants.ApplicationScheme, name, StringComparison.Ordinal))
|
if (string.Equals(IdentityConstants.ApplicationScheme, name, StringComparison.Ordinal))
|
||||||
{
|
{
|
||||||
|
|
@ -61,7 +73,5 @@ namespace Microsoft.AspNetCore.Identity.UI
|
||||||
options.AccessDeniedPath = "/Identity/Account/AccessDenied";
|
options.AccessDeniedPath = "/Identity/Account/AccessDenied";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Configure(CookieAuthenticationOptions options) => Configure(Options.DefaultName, options);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue