В настоящее время я пытаюсь абстрагировать механизм перечисления IAsyncEnumerable по мере его появления.
У меня есть базовый класс компонентов, который выглядит примерно так
// EnumerableRazorComponentBase.razor
@typeparam TObject
@if (!(this.enumerationTask?.IsCompleted ?? false))
{
// Display loading bar
}
// EnumerableRazorComponentBase.razor.cs
public abstract partial class EnumerableRazorComponentBase<TObject> : ComponentBase
{
private Task enumerationTask;
// rest of enumeration logic...
}
Теперь я наследую этот базовый класс в компоненте бритвы
// SomeComponent.razor
@inherits EnumerableRazorComponentBase<IMyInterface>
// other razor markup
@code {
// rest impl
}
EnumerableRazorComponentBase.razor.cs
наследуется правильно и работает, как и ожидалось, но разметка в EnumerableRazorComponentBase.razor
не добавляется в разметку SomeComponent.razor
.
Можно ли унаследовать разметку бритвы от базового класса, и если да, то что я делаю неправильно / чего мне не хватает?