यह समझने अलग मार्कअप टैग ASP.NET टेम्पलेट मार्कअप प्रसंस्करण के भीतर क्या मतलब है लायक है:
<% expression %> - evaluates an expression in the underlying page language
<%= expression %> - short-hand for Response.Write() - expression is converted to a string and emitted
<%# expression %> - a databinding expression that allows markup to access the current value of a bound control
तो एक त्रिगुट अभिव्यक्ति के मूल्य (सशर्त ऑपरेटर गलती) फेंकना आप कर सकते हैं या तो उपयोग:
<%= (condition) ? if-true : if-false %>
या आप writeL कर सकते हैं
<% Response.Write((condition) ? if-true : if-false) %>
आप डेटाबाउंड नियंत्रण का उपयोग (एक पुनरावर्तक की तरह, उदाहरण के लिए) थे, तो आप का मूल्यांकन करने के डेटा बाइंडिंग प्रारूप का उपयोग करें और परिणाम का उत्सर्जन कर सकते हैं:
<asp:Repeater runat='server' otherattributes='...'>
<ItemTemplate>
<div class='<%# Container.DataItem(condition ? if-true : if-false) %>'> content </div>
</ItemTemplate>
</asp:Repeater>
<% #%> मार्कअप विस्तार की एक दिलचस्प पहलू यह है कि है इसका उपयोग टैग के गुणों के अंदर किया जा सकता है, जबकि अन्य दो रूपों (<% और <% =) का उपयोग केवल टैग सामग्री (कुछ विशेष केस अपवादों के साथ) में किया जा सकता है। ऊपर दिया गया उदाहरण यह दर्शाता है।
भविष्य के संदर्भ के लिए, इसे अक्सर "ऑपरेटर अगर टर्नरी" कहा जाता है। –
@ ग्रेग: इसे वास्तव में सशर्त ऑपरेटर के रूप में जाना जाता है। http://msdn.microsoft.com/en-us/library/ty67wk28.aspx – LukeH
@Luke ग्रेग के निष्पक्षता में मैंने इसे सशर्त से टर्नरी ऑपरेटर के रूप में अधिक बार संदर्भित किया है। कथन के बारे में बात करते समय आमतौर पर सशर्त संदर्भित किया जाता है। – James