متى يجب علي استخدام # و= في عناصر تحكم ASP.NET؟

StackOverflow https://stackoverflow.com/questions/115159

  •  02-07-2019
  •  | 
  •  

سؤال

أنا أستخدم ASP.NET منذ سنوات، لكن لا يمكنني أبدًا أن أتذكر متى كان استخدام # و= مناسبًا.

على سبيل المثال:

<%= Grid.ClientID %>

أو

<%# Eval("FullName")%>

هل يمكن لأي شخص أن يشرح متى يجب استخدام كل منها حتى أتمكن من الاحتفاظ بها في ذهني؟هل يُستخدم # فقط في عناصر التحكم التي تدعم ربط البيانات؟

هل كانت مفيدة؟

المحلول

<%= %> يعادل إجراء Response.Write("") أينما تضعه.

<%# %> مخصص لربط البيانات ولا يمكن استخدامه إلا عندما يكون ربط البيانات مدعومًا (يمكنك استخدام هذه العناصر على مستوى الصفحة خارج عنصر التحكم إذا قمت باستدعاء Page.DataBind() في التعليمات البرمجية الخلفية الخاصة بك)

نظرة عامة على تعبيرات ربط البيانات

نصائح أخرى

هناك نوعان مختلفان من "لسعات النحل":

  • <%@ - توجيه الصفحة
  • <%$ - الوصول إلى الموارد
  • <%= - إخراج صريح إلى الصفحة
  • <%# - ربط البيانات
  • <%-- - كتلة التعليق من جانب الخادم

الجديد أيضًا في ASP.Net 4:

  • <%: - يكتب إلى الصفحة، ولكن مع ترميز HTML

الجديد أيضًا في ASP.Net 4.5:

  • <%#: - ربط البيانات المشفرة بـ HTML

وهنا أ تدوينة رائعة لدان كريفير الذي يمر عبر تطبيق اختباري كتبه لإظهار الاختلافات.

المضمون:

  • يتم تقييم التعبيرات <%= في وقت العرض
  • يتم تقييم التعبيرات <%# في وقت DataBind() ولا يتم تقييمها على الإطلاق إذا لم يتم استدعاء DataBind().
  • يمكن استخدام تعبيرات <%# كخصائص في عناصر التحكم من جانب الخادم.<%= لا يمكن التعبيرات.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top