爲什麼我需要使用<text>
標籤來封裝管道字符'|'在這個標記?當然,這遠遠超出了ActionLink方法的範圍。MVC3 Razor視圖中的文本字面問題
@foreach (var item in Model.DetailItem.PlannedResources)
{
<tr>
<td>
@if (Model.ViewMode == ViewMode.Edit)
{
@Html.ActionLink("Edit", "Edit", new { id = item.PlannedResourceId }) <text>|</text>
@Html.ActionLink("Delete", "Delete", new {id = item.PlannedResourceId})
}
@Html.ActionLink("Details", "Details", new { id = item.PlannedResourceId })
</td>
<td>
| @item.ResourceType.Name
</td>
</tr>
}
如果我不使用它,我得到的錯誤CS1525: Invalid expression term '|'
,但第二個「|」無阻礙地獲取。
有趣,但爲什麼然後我的其他| char(見編輯)在內部{}以外,但它仍然在一個外部循環中{}。在HTML標籤內部是否以某種方式轉義它? – ProfK 2010-12-11 13:46:41
@ProfK,我不明白。你在說什麼內在和外在的{}?什麼編輯? – 2010-12-11 13:48:24
@ProfK,對不起,現在我看到了你的編輯。在外部''''中,'|'字符在標籤內:'',這就是爲什麼它可以工作,而在內部沒有標籤:你有'{',一些服務器端助手'@ Html.ActionLink'之後直接用'|',沒有標籤,當沒有標籤時,它被認爲是服務器端。 – 2010-12-11 13:50:49