使用String.Format的每个Razor语法

时间:2012-07-30 09:02:52

标签: asp.net-mvc vb.net razor

我是ASP.MVC4中Razor语法的新手,需要在循环中格式化一个字符串,以提供正确图像文件的运行时路径。

我在For Each列表项中格式化字符串时遇到问题。你能看看下面的内容,让我知道我错过了什么。

<ul class="column">
    @For Each item As modeltype In Model
        @<li>
            @Code
                dim itemImage as string = String.Format("../../Images/{0}.png", @item.MajorAssembly)    
            End Code
            <a href="#"><img src="@itemImage"/></a> 
        </li>
    Next            
</ul>

1 个答案:

答案 0 :(得分:0)

取@ item.MajorAssembly的@ off。当你在@Code块中时,一切都被认为是代码,并且不需要额外的@。

<ul class="column">
@For Each item As modeltype In Model
    @<li>
        @Code
            dim itemImage as string = String.Format("../../Images/{0}.png", item.MajorAssembly)    
        End Code
        <a href="#"><img src="@itemImage"/></a> 
    </li>
Next            
</ul>

另外,如果需要,可以将String.Format调用直接放入src中,如下所示:

<ul class="column">
@For Each item As modeltype In Model
    @<li>
        <a href="#"><img src="@String.Format("../../Images/{0}.png", item.MajorAssembly)"/></a> 
    </li>
Next            
</ul>