這是一個非常新鮮的ASP.NET問題:我根本不知道並且無法計算出正確的語法。從ASP.NET MVC中的服務器端塊生成HTML
在我看來,我想生成一個動作鏈接,如果我的模型的某些條件爲真。我知道如何使用這個語法來生成一個鏈接:
<%: Html.ActionLink("Do Something", "DoSomething", new { id = Model.ID }) %>
但由於某些原因,語法並不在此代碼的工作:
<%
if (Model.CanDoSomething)
Html.ActionLink("Do Something", "DoSomething", new { id = Model.ID });
%>
我真的是一個新手到ASP.NET ,所以我甚至不知道不同語法的語義名稱是<%
和<%:
;我只能說<%
是void
,因爲<%:
是string
。清楚地執行一行只返回一個字符串(Html.ActionLink()
)的代碼不會產生任何效果。但是,請問什麼是使我的頁面呈現操作鏈接的正確方法?
這是一個很可惜的我不能谷歌「<%」!此主題的任何鏈接或解釋也將非常感激。
當然會,而且我自己也是這麼做的。但是,當然,處理這種情況有一種更優雅的方式嗎? – 2011-06-06 16:05:40
@Shaul。是。改用Razor視圖引擎。 :) – Max 2011-06-06 16:06:32
您可以切換到帶有Razor視圖引擎的MVC 3。這一個有一個更直觀的語法。 – DanielB 2011-06-06 16:07:45