Blazor 将泛型类型传递给基础 class

Blazor pass to generic type to base class

我的基础classListPage如下

@inherits TPL.Client.Core.Bases.Page 

@code {

[Inject] protected IConfiguration Configuration { get; set; } = null!;

protected override async Task OnInitializedAsync()
{
    await base.OnInitializedAsync();

    //stuff
}

protected override async Task OnParametersSetAsync()
{       
   //stuff
}

}

然后继承classOrganizations如下

@inherits TPL.Client.Core.Bases.ListPage

@layout TPL.Client.Shared.Layouts.ListPage

@page "/app/organizations"

<PageTitle>Organization</PageTitle>

@if (items != null)
{
    //stuff
}


@code {
    List<Domain.Organization.Organization> items;

    
    protected override async Task OnInitializedAsync() => await base.OnInitializedAsync();

    protected override async Task OnParametersSetAsync() 
    {
        base.OnParametersSetAsync();

       //stuff
    }
}

我希望能够将 List<Domain.Organization.Organization> items; 移动到 parent class (ListPage),使其成为 List<TItem> items 然后通过来自 child class (Organizations).

的通用类型

这可能吗?

给定一个基础 class razor 文件,例如:

@typeparam T

@code {
    public List<T> list = new();
}

您可以通过使用 @inherits 和类型参数来子class 这个:

@inherits GenericBaseClass<Domain.Organization.Organization>