"@:" не распознается - PullRequest
0 голосов
/ 01 мая 2018

Я работаю с сообществом MVC5 и Visual Studio 2017, и я нахожусь на моей странице просмотра Razor cshtml и пытаюсь использовать @:, но он не распознает его.

Я получаю эту ошибку:

Ошибка парсера

Описание: во время анализа ресурса, необходимого для обслуживания этого запроса, произошла ошибка. Пожалуйста, просмотрите следующую конкретную информацию об ошибке разбора и измените исходный файл соответствующим образом.

Сообщение об ошибке парсера: ":" недопустимо в начале блока кода. Допустимы только идентификаторы, ключевые слова, комментарии, "(" и "{". **

<td>
    @:test
    @Html.ActionLink("Edit", "Edit", new { id=item.Id }) |
    @Html.ActionLink("Details", "Details", new { id=item.Id }) |
    @Html.ActionLink("Delete", "Delete", new { id=item.Id })
</td>

1 Ответ

0 голосов
/ 01 мая 2018

Вы получаете сообщение об ошибке, потому что вы не находитесь в блоке кода, вы набираете его внутри HTML.

@: используется для включения строки содержимого в блок кода Razor. Пример:

@if(name == "Mark") {
    @: Hello Mark
}

Если у вас есть переменная test, и вы пытаетесь распечатать ее внутри своего HTML-кода, используйте @, например:

<td>
    @test
    @Html.ActionLink("Edit", "Edit", new { id=item.Id }) |
    @Html.ActionLink("Details", "Details", new { id=item.Id }) |
    @Html.ActionLink("Delete", "Delete", new { id=item.Id })
</td>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...