以下を達成するためのよりエレガントなコードは何でしょうか:
foreach(var filter in Model.Filters)
{
if(filter.Selected)
{
<div class="crumb crumb_selected" id="@filter.ID">
@* much more html can be here *@
@filter.Title
<span class="counter">
(@filter.Count)
</span>
</div>
} else {
<div class="crumb" id="@filter.ID">
<a href="@Model.ClickUrl(Model.SelectedFilters, filter)">
@* much more html can be here but similar code as above *@
@filter.Title
<span class="counter">
(@filter.Count)
</span>
</a>
</div>
}
}
- div / span の繰り返される html コードは悪いコードのようです
- また、css-class 仕様はエレガント バージョンで解決する必要があります。