小编sys*_*221的帖子

嵌套条件无法正确识别

我正试图在使用Razor的if/else中嵌入foreach,但是我在Razor声称我错过了一个结束括号时遇到了一些问题.代码在下面,我注意到Visual Studio没有语法突出显示的"else",我猜这是问题所在:

    @if (ViewBag.user.administrativeRole != null)
    {
        <select name="administrativeRole" id="administrativeRole" class="selectInput" disabled="disabled">   
    }
    else // this else isn't syntax highlighted 
    {
        <select name="administrativeRole" id="administrativeRole" class="selectInput">
        @foreach (var role in ViewBag.roles)
        {
        if (ViewBag.user.administrativeRole != null && ViewBag.user.administrativeRole == role.superadmin)
        {
            <option value="@role.id" selected="selected">@role.name</option>
        }
        else
        {
            <option value="@role.id">@role.name</option>
        }
    }
}
</select>
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误:

if块缺少结束"}"字符.确保此块中的所有"{"字符都有匹配的"}"字符,并且没有任何"}"字符被解释为标记.

Line 58: @if (ViewBag.user.administrativeRole != null)
Line 59: {
Line 60:    <select name="administrativeRole" id="administrativeRole" class="selectInput" disabled="disabled">  
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?我猜我只是简单地说了一下语法,因为我是Razor的新手.

razor asp.net-mvc-3

0
推荐指数
1
解决办法
3750
查看次数

标签 统计

asp.net-mvc-3 ×1

razor ×1