gpt4 book ai didi

asp.net-mvc - 如何使用razor View 引擎简洁地创建可选的HTML属性?

转载 作者:行者123 更新时间:2023-12-03 07:13:45 24 4
gpt4 key购买 nike

我正在寻找一种用更少的代码行(也许 5 行)编写以下代码的方法。我想我可以做与所选类相同的事情,但这个 Razor 语法看起来不太漂亮。

<ul>
@foreach (var mi in Model.MenuItems) {
<li@(mi.Selected?" class=\"selected\"":null)>
@if (string.IsNullOrEmpty(mi.Title)) {
<a href="@mi.Href">@mi.Text</a>
} else {
<a href="@mi.Href" title="@mi.Title">@mi.Text</a>
}
</li>
}
</ul>

最佳答案

已在 ASP.NET MVC 4 中修复

参见http://weblogs.asp.net/jgalloway/archive/2012/02/16/asp-net-4-beta-released.aspx

条件属性渲染

如果您有一个可能为 null 的属性,过去您需要执行 null 检查以避免写出空属性,如下所示:

<div @{if (myClass != null) { <text>class="@myClass"</text> } }>Content</div>

现在 Razor 能够自动处理该问题,因此您只需写出该属性即可。如果为 null,则不写入该属性:

<div class="@myClass">Content</div>

因此,如果 @myClass 为 null,则输出如下:

<div>Content</div>

关于asp.net-mvc - 如何使用razor View 引擎简洁地创建可选的HTML属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3800473/

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