diff --git a/src/BootstrapBlazor/Components/ErrorLogger/BootstrapBlazorErrorBoundary.cs b/src/BootstrapBlazor/Components/ErrorLogger/BootstrapBlazorErrorBoundary.cs index 5534cdd5176..ef9163543ba 100644 --- a/src/BootstrapBlazor/Components/ErrorLogger/BootstrapBlazorErrorBoundary.cs +++ b/src/BootstrapBlazor/Components/ErrorLogger/BootstrapBlazorErrorBoundary.cs @@ -67,7 +67,7 @@ class BootstrapBlazorErrorBoundary : ErrorBoundaryBase /// protected override Task OnErrorAsync(Exception exception) { - if (EnableILogger) + if (EnableILogger && Logger.IsEnabled(LogLevel.Error)) { Logger.LogError(exception, "BootstrapBlazorErrorBoundary OnErrorAsync log this error occurred at {Page}", NavigationManager.Uri); } diff --git a/src/BootstrapBlazor/Components/ErrorLogger/ErrorLogger.cs b/src/BootstrapBlazor/Components/ErrorLogger/ErrorLogger.cs index 133113f3f38..091cb2e590b 100644 --- a/src/BootstrapBlazor/Components/ErrorLogger/ErrorLogger.cs +++ b/src/BootstrapBlazor/Components/ErrorLogger/ErrorLogger.cs @@ -1,4 +1,4 @@ -// Licensed to the .NET Foundation under one or more agreements. +// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the Apache 2.0 License // See the LICENSE file in the project root for more information. // Maintainer: Argo Zhang(argo@live.ca) Website: https://www.blazor.zone @@ -101,15 +101,20 @@ protected override async Task OnInitializedAsync() /// protected override void BuildRenderTree(RenderTreeBuilder builder) { - builder.OpenComponent>(0); - builder.AddAttribute(1, nameof(CascadingValue<>.Value), this); - builder.AddAttribute(2, nameof(CascadingValue<>.IsFixed), true); - builder.AddAttribute(3, nameof(CascadingValue<>.ChildContent), RenderContent); - builder.CloseComponent(); + if (EnableErrorLogger) + { + builder.OpenComponent>(0); + builder.AddAttribute(1, nameof(CascadingValue<>.Value), this); + builder.AddAttribute(2, nameof(CascadingValue<>.IsFixed), true); + builder.AddAttribute(3, nameof(CascadingValue<>.ChildContent), RenderError); + builder.CloseComponent(); + } + else + { + builder.AddContent(10, ChildContent); + } } - private RenderFragment? RenderContent => EnableErrorLogger ? RenderError : ChildContent; - private RenderFragment RenderError => builder => { builder.OpenComponent(0); @@ -119,7 +124,7 @@ protected override void BuildRenderTree(RenderTreeBuilder builder) builder.AddAttribute(4, nameof(BootstrapBlazorErrorBoundary.ErrorContent), ErrorContent); builder.AddAttribute(5, nameof(BootstrapBlazorErrorBoundary.ChildContent), ChildContent); builder.AddAttribute(6, nameof(BootstrapBlazorErrorBoundary.EnableILogger), EnableILogger); - builder.AddComponentReferenceCapture(5, obj => _errorBoundary = (BootstrapBlazorErrorBoundary)obj); + builder.AddComponentReferenceCapture(7, obj => _errorBoundary = (BootstrapBlazorErrorBoundary)obj); builder.CloseComponent(); };