html.encode أهمية
-
24-09-2019 - |
سؤال
أنا أعمل من خلال البرنامج التعليمي Nerddinner MVC وصادف هذا وكان أتساءل عنه.
في الصفحة 62 من PDF لديهم ما يلي:
<asp:Content ID="Main" ContentPlaceHolderID="MainContent" runat="server">
<h2>Upcoming Dinners</h2>
<ul>
<% foreach (var dinner in Model) { %>
<li>
<a href="/Dinners/Details/<%=dinner.DinnerID %>">
<%= Html.Encode(dinner.Title) %>
</a>
on
<%= Html.Encode(dinner.EventDate.ToShortDateString())%>
@
<%= Html.Encode(dinner.EventDate.ToShortTimeString())%>
</li>
<% } %>
</ul>
</asp:Content>
ثم يذكرون أنه بدلاً من استخدام <a>
العلامة التي يمكنك استخدام HTML Helper مثل SO:
<%= Html.ActionLink(dinner.Title, "Details", new { id=dinner.DinnerID }) %>
والسؤال هو: أليس من المهم html.encode العشاء. من النموذج عند استخدام هذا النهج؟ إذا لم يكن كذلك ، فلماذا لا؟ إذا كان الأمر كذلك ، هل هناك طريقة لاستخدام html.actionlink وما زلت تستخدم html.encode؟
المحلول
Html.ActionLink
مكالمات بالفعل Encode
, ، داخليا (انظر المصدر). أنت لا تريد أن تفعل ذلك مرتين.
لا تنتمي إلى StackOverflow