У меня есть приложение Blazor на стороне сервера с настройкой аутентификации, как это предлагается в Visual Studio Tempalte. Затем я добавил элементы лесов идентификации. Нет, я пытаюсь добавить компонент бритвы на экран входа в систему, чтобы я мог сохранить все в одном дизайне.
На самой странице я добавил это:
<script src="~/_framework/blazor.server.js"></script>
<Login>
@(await Html.RenderComponentAsync<ApplySupportTool.Blazor.Pages.Shared.Login>(RenderMode.Server))
</Login>
Теперь, так как IdentityСтраницы запускаются в своих собственных процессах (на основе ScaffoldingReadme), которые настраиваются в IdentityHostingStartup.cs
Я пытался добавить туда настройки Blazor Setup:
builder.ConfigureServices((context, services) => {
});
builder.UseStartup<IdentityStartup>();
public class IdentityStartup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddServerSideBlazor();
}
public void Configure(IApplicationBuilder app)
{
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapBlazorHub();
});
}
}
Но как только я это сделаю, я получуИсключение нулевого указателя, когда я пытаюсь разрешить свой контекст БД в programm.cs. Интересно, что это происходит и тогда, когда у меня есть только пустые тела методов в IdentityStartup. Также я попытался переместить весь код инициализации БД в автозагрузку, чтобы избежать нулевого указателя, но тогда сайт просто не запустился. Должен ли я установить это по-другому или где-то еще?