我是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>
答案 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>