Особенно внутри ретрансляторов, ListViews и GridViews, назовите ваши элементы управления как-нибудь коротко.
Это должно быть очевидно по контексту (список продуктов)
Если в ретрансляторе есть только одна гиперссылка, назовите ее гл . Вам не нужно вызывать эти элементы управления HyperLinkProduct.
<asp:Repeater id="rptProducts" runat="server">
<ItemTemplate>
<asp:HyperLink id="hl" runat="server" NavigateUrl='<%# Eval("URL") %>'>
<%# Eval("Name") %>
</asp:HyperLink>
<asp:Image id="img" runat="server" ImageUrl='<%# Eval("ImageUrl") %>' />
</ItemTemplate>
</asp:Repeater>
Это будет что-то вроде:
<a id="ctl00_rptProducts_ctrl0_hl" href="/products.aspx?id=5">
Product Name
</a>
<img id="ctl00_rptProducts_ctrl0_img" src="images/5.png"/>
Умножьте эти имена идентификаторов на 100, и ваши идентификаторы начнут занимать намного больше места, если вы используете длинные описательные имена. Внутри повторителей короткие идентификаторы должны быть достаточно четкими, если ваш повторитель имеет правильное имя.