如何将 Razor 宏中的首字母大写?

How to capitalized first letter in Razor macro?

这是我的第一个宏,我试图让“@homeNode.Name”和“@page.Name”的首字母大写。有没有像添加“.ToUpper()”或“.ToLower()”这样的方法来完成这个?

这是宏代码:

<nav>
<ul class="nav-list">
    @{ var homeNode = Model.AncestorOrSelf("about"); }

    <li class="@homeNode.Name @Library.If(homeNode.Id == Model.Id, "selected", "")"><a href="@homeNode.Url">@homeNode.Name</a></li>

    @foreach (var page in homeNode.Children.Where("Visible"))
    {
        var isSelected = false;
        if (Model.Id == page.Id || (Model.Parent != null && Model.Parent.Id == page.Id && Model.NodeTypeAlias != "Textpage"))
        {
            isSelected = true;
        }
        <li class="@page.Name @Library.If(isSelected, "selected")">
            <a href="@page.Url">@page.Name</a>
        </li>
    }
</ul>

您可以使用

System.Globalization.TextInfo.ToTitleCase();

或者只是 css

text-transform: capitalize;