2012-09-06 32 views
7

我有問題在代碼塊內執行linq查詢。代碼塊內的MVC剃鬚刀括號

@{ 
    var foo = @Model.Things.Select((value, index) => new { value, index }); 
} 

問題是新的{},它將第二個括號視爲關閉整個代碼塊。任何方式來逃避它?

回答

13

取出@Model

@{ 
    var foo = Model.Things.Select((value, index) => new { value, index }); 
} 
+3

我覺得愚蠢的,謝謝。 – Matthew

+0

奇怪的是,在MVC4中,如果您在代碼塊中執行此操作,模型前的&符號不會被標記爲錯誤,但會返回其他錯誤。對於我來說,MVC3在代碼塊中的@Model指令沒有問題。 –

5

請嘗試

@{ 
var foo = Model.Things.Select((value, index) => new { value, index }); 
}