我目前正在学习 Blazor。
我的模型有一个抽象类和这个抽象类的十几个具体实现。例如Fruit
和Apple
,Banana
和Orange
。每个实现都需要一个特定的用户界面。
所以我为每个类创建了一个 Razor 组件。让我们称它们AppleView
为BananaView
和OrangeView
。
我的前端查询 aFruit[]
并遍历每个条目并呈现特定的 Razor 组件。看起来像这样:
@foreach (Fruit fruit in Fruites)
{
if (fruit is Apple apple)
<AppleView fuit="apple" />
else if (fruit is Banana banana)
<BananaView fuit="banana" />
else if (fruit is Orange orange)
<OrangeView fuit="orange" />
}
有没有更好的方法将这么大的 if-else-statement 组合在一起?有没有办法将模型类映射到它的视图?
谢谢!