Search code examples
blazorblazor-client-side

Unable to override OnAfterRenderAsync in client side blazor


In my Blazor client-side app, I am trying to override OnAfterRenderAsync using

@code {
    protected override async Task OnAfterRenderAsync()
    {

    }
}

I get an error

no suitable methods to override!?

On the other hand this override works just fine:

protected override async Task OnInitializedAsync()
{

}

Any clues what is wrong here?


Solution

  • Quoting ASP.NET Core and Blazor updates in .NET Core 3.0 Preview 9's Upgrade an existing project:

    • Replace OnAfterRender() and OnAfterRenderAsync() implementations with OnAfterRender(bool firstRender) or OnAfterRenderAsync(bool firstRender).

    Since NET Core 3.0 Preview 9 OnAfterRender receives a boolean parameter to let method know if this is the first render. Very useful to avoid controlling it by yourself:

    Git hub code upgrading to preview 9

    Sample about how to replace old code to new one, red old code, green new one.