Отображение коллекции в Repeater control - PullRequest
0 голосов
/ 06 января 2012

Я новичок в Asp.Net, и я пытаюсь отобразить "gc" на элементе управления reapet.

Вот код позади:

 public partial class _Default : System.Web.UI.Page
{
      List<GlassesCollection> gc= BL.Example.GetCategory() ;

    protected void Page_Load(object sender, EventArgs e)
    {
        rpt1.DataSource = gc;
        rpt1.DataBind();
    }

    protected void rpt1_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {

    }

Я использую следующий код ASP:

<asp:Repeater ID="rpt1" runat="server" onitemdatabound="rpt1_ItemDataBound">
    <ItemTemplate>
        <%# Eval("gc") %>
    </ItemTemplate>
</asp:Repeater>

Но во время выполнения я получаю это исключение: Сведения об исключении: System.Web.HttpException: DataBinding: «ISeeOptic.DataType.GlassesCollection» не содержит свойства с именем «gc».

Почему я получаю это исключение и идея, как это решить?

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 06 января 2012

Как правило, вы можете воспользоваться преимуществами класса DataBinder, который обладает наибольшей мощностью и гибкостью, как и список кода здесь ...

<asp:Repeater ID="rpt1" runat="server" onitemdatabound="rpt1_ItemDataBound">
   <ItemTemplate>         
      <%# DataBinder.Eval("gcProperty") %>     
   </ItemTemplate> 
</asp:Repeater>
0 голосов
/ 06 января 2012

Попробуйте оценить конкретное свойство, а не объект

<asp:Repeater ID="rpt1" runat="server" onitemdatabound="rpt1_ItemDataBound">
   <ItemTemplate>         
      <%# Eval("gcProperty") %>     
   </ItemTemplate> 
</asp:Repeater>

Вопрос SO дает более подробную информацию о привязке повторителя к общему списку.

...