razor中html标记与服务器端标记混合不空格输出

Html标记与razor @服务器端代码混用,在英文里很好

英文每个单词之间都空格,但是中文字与字之间不空格

@for (int i = 0; i < 5; i++)
{
    <li>this is @i element</li>
}

image

英文没什么问题,但是换成中文

@for (int i = 0; i < 5; i++)
{
    <li>第@i个</li>
}

连语法高亮都没有了

image

运行结果也说明没起作用

@for (int i = 0; i < 5; i++)
{
    <li>第{@i}个</li>
}

加上大括号

image

变量是出来了,但是不是我们要的效果

@for (int i = 0; i < 5; i++)
{
    <li>@{@i}</li>
}

在大括号的外面再加@

image

使用场景:

给列表中的每个元素一个id,比如上面的li,id为 li0、li1、li2。。。,这个时候有空格就不对了。

原文地址:https://www.cnblogs.com/czcz1024/p/2242977.html