簡體   English   中英

<%和<%之間有什么區別:

[英]What's the difference between <% and <%:

我在谷歌找不到任何東西,我想搜索條件太多了。 VS內置幫助只解釋<%,這只是嵌入式代碼。 沒有提到<%:

編輯:我的書說,唯一的區別是<%:返回一個MvcHtmlString。 為什么我們需要一個額外的符號<%:只是為了返回一些東西?

EDIT2:一個例子:

<% Html.RenderAction("xxx", "xxx"); %>

什么都沒有返回,這就是為什么我們必須說<%,因為它會htmlencode? 但是如果我在.RenderAction()中呈現需要htmlencoded的東西呢? 或者這沒有意義嗎?

謝謝你的幫助! 這真的有助於我理解asp.net。

使用<%:您已經告訴頁面HtmlEncode <%:%>標記內的內容。 它出現在.Net 4中。

編輯:是的,MvcHtmlString已經是HtmlEncoded。

PS:如果你希望(有時)不將文本編碼為HTML粘貼舊文件,但你必須知道,如果該數據是由用戶提供的,那么它被認為是一種安全威脅,可以用來對其進行XSS攻擊。您的網站/應用程序。

兩者都用於在視圖上呈現文本,但是當您使用<%:時,文本將自動進行HTMLEncoded。

如其他答案所示,它適用於Html編碼。 這是一篇博客文章解釋

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM