Ваша основная проблема заключается в том, что в вашем коде aspx отсутствует правильный синтаксис привязки данных. Должно быть:
<%# DataBinder.Eval(Container.DataItem, "URL") %>
Кроме того, при первом вызове привязки данных вы можете сделать следующее, потому что это список строк:
<%# Container.DataItem %>
Помимо этого, есть несколько других проблем с вашей логикой в событии ItemDatabound. Вы вызываете одни и те же GetArchiveItems для каждого года. Это означает, что вы будете получать весь список ArchiveItems за каждый год. Вы должны извлечь текущий привязанный год и передать его в функцию GetArchiveItems, чтобы вы могли извлечь только те, которые относятся к этому году.
Кроме того, вам не нужно инициализировать переменную ArchivePostRepeater новым объектом Repeater (), поскольку вы устанавливаете его в другом коде сразу после этого. Вы можете просто установить его на ноль изначально.