AspNetCore.Docs/aspnetcore/diagnostics/bl0001.md

1.8 KiB

title description author monikerRange ms.author ms.date no-loc uid
BL0001: Component parameter should have public setters Learn about analysis rule BL0001: Component parameter should have public setters pranavkm >= aspnetcore-3.1 riande 10/21/2021
.NET MAUI
Mac Catalyst
Blazor Hybrid
Home
Privacy
Kestrel
appsettings.json
ASP.NET Core Identity
cookie
Cookie
Blazor
Blazor Server
Blazor WebAssembly
Identity
Let's Encrypt
Razor
SignalR
diagnostics/bl0001

BL0001: Component parameter should have public setters

Value
Rule ID BL0001
Category Usage
Fix is breaking or non-breaking Breaking

Cause

A property on a type deriving from xref:Microsoft.AspNetCore.Components.ComponentBase annotated with [Parameter] has a missing or non-public setters.

Rule description

Component parameters are required to have publicly accessible setters to allow the framework to assign values. All of the parameter declarations in the following example result in this diagnostic.

@code
{
    [Parameter] int Parameter1 { get; set; }

    [Parameter] public int Parameter2 { get; }

    [Parameter] public int Parameter3 { get; private set; }
}

How to fix violations

  • Make the property and its setter public.
@code
{
    [Parameter] public int Parameter1 { get; set; }

    [Parameter] public int Parameter2 { get; set; }

    [Parameter] public int Parameter3 { get; set; }
}

When to suppress warnings

Do not suppress a warning from this rule.