2010-10-28 102 views
0

我希望對發送給瀏覽器的HTML進行編碼。在我的.ASPX頁面中,我可以使用<%:%>語法。在我的我嘗試的HTML輔助...HTML編碼自定義HTML幫手

public static string Image(this HtmlHelper helper, string imageName, string altText) 
    { 
     return helper.Encode(String.Format("<image src='/images/{0}' alt='{1}' />", imageName, altText)); 
    } 

然而,當HTML達到HTML只是顯示爲文本瀏覽器,並沒有圖像顯示。如何從輔助方法編碼HTML?

+0

你叫用<%頁面上的幫助:或<%=? – Equiso 2010-10-28 15:46:39

+0

我嘗試了兩個。都沒有工作。 – 2010-10-28 17:16:25

回答

1

刪除 「helper.Encode」

public static String MyImg(this HtmlHelper helper, string imageName, string altText) { 
    return String.Format("<image src='/images/{0}' alt='{1}' />", imageName, altText); 
} 
+0

是的,試過了。因此,如果我刪除helper.Encode,但在視圖中使用<%:語法對字符串進行編碼,我只需在網頁中獲取打印的HTML(與它應該顯示的圖像相比)。當然,使用<%=工作得很好(但不是編碼)。 – 2010-11-01 12:19:32

+0

是「<%:」對返回的字符串進行編碼。 你必須使用「<%=」sintax。 – 2010-11-08 11:25:47

+0

我的解決方案沒問題。那麼爲什麼不接受呢? – 2010-11-09 08:21:27