Καλημέρα, στην περίπτωση που θέλεις να δώσεις το id σε HTML control θα χρησιμοποιήσεις το eval(container,"dataitem.id") όπως είπες, αν όμως το control σου είναι server control πχ. <asp:Label></asp:Label> τότε μπορείς να αναθέσεις το id μέσα στο event handler του repeater ItemCreated. Έστω το παρακάτω παράδειγμα:
<asp:Repeater ID="Repeater1" runat="server" OnItemCreated="Repeater1_ItemCreated">
<ItemTemplate>
<asp:Label runat="server">
</asp:Label>
</ItemTemplate>
</asp:Repeater>
Στο code file θα έχεις:
protected void Repeater1_ItemCreated(object sender, RepeaterItemEventArgs e)
{
foreach (Control c in e.Item.Controls)
{
if (c is Label)
{
((Label)c).ID = GetLabelId();
}
}
}
Καλή τύχη φίλε