2012-07-30 31 views
0

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

我在格式化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

这是代码示例纠正它看起来畸形 – 2012-07-30 09:05:12

回答

0

取@ @ item.MajorAssembly。当你在@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> 
+0

谢谢,整理它 – 2012-07-30 09:27:56