Привет! Я работаю над браузерной игрой ASP.NET без каких-либо сценариев .Однако возникает проблема, когда я пытаюсь использовать IF ELSE в файле Razor для создания тегов HTML.
Вот код:
<table width="400" height="400 " style="overflow: hidden; white-space: nowrap; table-layout:fixed;" class="field">
@for (var row = 0; row < Model.Field.RowCount; row++)
{
<tr>
@for (var column = 0; column < Model.Field.ColumnCount; column++)
{
var tile = Model.Field;
@if (tile.TileField[row, column].IsMarked)
{
<td style="border:1px solid black;">
}else{
<td style="border:2px solid black;">
}
<a href='/Tetravex/Move?row=@(row)&column=@(column)'>
<table width="100" height="100" style="transform:rotate(45deg); text-align:center;">
<tr style="border-bottom:1px solid black;">
<td style="border-right:1px solid black; transform:rotate(-45deg);"><p style="margin:0px;">@(tile.TileField[row, column].North)</p></td>
<td style="transform:rotate(-45deg);"><p style="margin:0px;">@(tile.TileField[row, column].East)</p></td>
</tr>
<tr>
<td style="border-right:1px solid black; transform:rotate(-45deg);"><p style="margin:0px;">@(tile.TileField[row, column].West)</p></td>
<td style="transform:rotate(-45deg);"><p style="margin:0px;">@(tile.TileField[row, column].South)</p></td>
</tr>
</table>
</a>
</td>
}
</tr>
}
</table>
Я знаю, что код не слишком ясен, довольно запутан, и, возможно, есть лучший способ сделать это, мне просто интересно, почему это не работает.И не беспокойтесь обо всех свойствах CSS, которые там есть, я в конечном итоге все исправлю.
Проблема в в том, что Visual Studio не нравится, что *Тег 1016 * не закрыт внутри оператора if
, и поэтому оператор }else{
становится серым и игнорируется.Почему это?