gpt4 book ai didi

c# - 是否可以从组件继承 Razor 标记?

转载 作者:行者123 更新时间:2023-12-04 13:38:32 27 4
gpt4 key购买 nike

我目前正在尝试抽象出一种机制来枚举可用的 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...
}

现在我在 Razor 组件中继承了这个基类
// SomeComponent.razor
@inherits EnumerableRazorComponentBase<IMyInterface>

// other razor markup

@code {
// rest impl
}
EnumerableRazorComponentBase.razor.cs被正确继承并按预期工作,但 EnumerableRazorComponentBase.razor 中的标记未添加到 SomeComponent.razor 的标记中.

是否可以从基类继承 Razor 标记,如果是这样,我做错了什么/我错过了什么?

最佳答案

是的,这是可能的。只需添加对 base.BuildRenderTree 的调用,如下所示:

// SomeComponent.razor
@inherits EnumerableRazorComponentBase<IMyInterface>

@{
base.BuildRenderTree(__builder);
}

<h2>Additional markup in subclassed component</h2>

@code {
// rest impl
}

关于c# - 是否可以从组件继承 Razor 标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60364187/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com