@foreach (string s in "1,2,3".Split(',')) { s is equal to @s<br/> }
Я хочу выплюнуть: s равно 1 s, равно 2 s, равно 3
Но я получаю всевозможные ошибки, потому что Visual Studio считает, что между{} - это код, но я хочу, чтобы это была разметка.
Только что видел это в блоге ScottGu этим утром : используйте @: перед этой строкой:
@:
@foreach (string s in "1,2,3".Split(',')) { @: s is equal to @s<br/> }
Альтернативно, используйте тег <text />:
<text />
@foreach (string s in "1,2,3".Split(',')) { <text>s is equal to @s<br/></text> }
Скотт Гатри только что ответил сегодня утром . Измените его на
@foreach (string s in "1,2,3".Split(',')) { <text>s is equal to </text>@s<br/> }
Я думаю, что это потому, что вы разбираете текст вне скобок, поэтому Razor думает, что это код, попробуйте использовать текстовый тег выше, как это происходит с @: но (по крайней мере для меня) это немного больше интуитивно понятный (он не будет анализировать теги)