Я пытаюсь настроить раскрывающееся меню, которое вытаскивает из Datatable. Это отлично подходит для первого уровня меню.
Рабочий код:
<ul class="dropdown-menu">
@foreach (System.Data.DataRow dr in menu.Rows)
{
if (Level1 != dr["Level1"].ToString())
{
<li><a href="#">@dr["Level1"].ToString()</a></li>
Level1 = @dr["Level1"].ToString();
}
}
</ul>
Проблема возникает, когда я пытаюсь добавить вложенный оператор if. Если вы поместите этот код в Visual Studio, вы заметите, что закрывающая скобка для цикла @foreach
не распознается Razor.
Разрывы кода:
<ul class="dropdown-menu">
@foreach (System.Data.DataRow dr in menu.Rows)
{
if (Level1 != dr["Level1"].ToString())
{
<li><a href="#">@dr["Level1"].ToString()</a></li>
Level1 = @dr["Level1"].ToString();
if (Level2 != dr["Level2"].ToString())
{
<li><a href="#">@dr["Level2"].ToString()</a></li>
Level2 = @dr["Level2"].ToString();
}
}
} <!-- the issue is the bracket on this line -->
</ul>