She*_*els 22 vb.net asp.net-mvc visual-studio-2010 razor
我刚刚下载了MVC 3.0 RC,我很高兴开始使用它,尤其是Razor视图引擎.然而,由于在这里的泥类型中有一些人,我们坚持使用VB.NET而不是C#.
当我开始尝试时,我注意到了一些怪癖.如果您使用CSHTML创建Razor视图,则可以编写如下代码:
@foreach(string genreName in Model.Genres)
{
<li>@genreName</li>
}
Run Code Online (Sandbox Code Playgroud)
Razor会自动检测到<li>
文本是HTML标记,并将切换出"代码模式".使用VB.NET VBHTML文件,这似乎不起作用.它让我把@:
关键字放在每一行的前面,如下所示:
@For Each genreName As String In Model.Genres
@:<li>@genreName</li>
Next
Run Code Online (Sandbox Code Playgroud)
如果我没有它,我会收到运行时错误.此外,<text></text>
标签似乎不起作用.
有人知道这里发生了什么,或者是否有解决方法?
Bui*_*ted 16
我想说在Vb.net中需要的原因是vb允许xml元素内联,而c#不允许.
Dim xmlMarkup = <someElement>Values</span>
Run Code Online (Sandbox Code Playgroud)
因此,vb的自然解析器必须与c#的行为不同,所以你必须告诉解析器通过使用它来转义回html @
.你可以使用@
和@:
.
归档时间: |
|
查看次数: |
12953 次 |
最近记录: |