如何將一段Html渲染成Razor中的變量? 火花我以前寫下面的代碼:剃刀 - 如何將內容渲染到變量中
<content var="t">
<a class="tab" href="">Tab name</a>
</content>
<content var="tc">
<div class="tabcontent">
<p>Here goes tab content</p>
</div>
</content>
!{tabs(t, tc)}
兩個變量獲取傳遞到執行內容進入標籤紙的所有漂亮包裝的宏。
在剃刀上做同樣的事情最好的方法是什麼?
更新:我想我它..
在剃刀中,@<text>...</text>
構建體可以是用戶產生lambda表達式,其可以稍後再利用,這是分配塊的HTML的擴展等效到一個變量。上面的例子可以通過以下方式實現:
Func<int, object> t =
@<text>
<a class="tab" href="">Tab name</a>
</text>;
Func<int, object> tc =
@<text>
<div class="tabcontent">
<p>Here goes tab content</p>
</div>
</text>;
@tabs(t(0), tc(0))
我只是無法弄清楚如何寫參數的lambda表達式(Func<object>
)。上述兩個lambda中的int
參數都是虛擬的。 Razor似乎需要一個參數(並且已經在表達式中創建了一個變量「item」來表示它)。
感謝,我想我真正需要的是一個內聯幫手語法。我不知道這在剃刀中是否可用。解決方案將是聲明一個顯式的幫助器,可以調用該幫助器,並將結果分配給一個變量。 – Andy 2010-12-29 18:04:13
我在上面的評論中錯了。語法可用,不需要顯式幫助器。可以使用Lambda表達式來代替。看到我更新的問題。 – Andy 2010-12-30 15:31:41