Erstellen eines Repeaters BLL
Frage
Ich versuche, ein Repeater-Steuerelement mit Daten meiner Datenbank gebunden zu erstellen. Dies sollte die Verwendung mit einem BLL sein. Aber ich weiß nicht, was ich tun muss.
ich hoffe, jemand kann mir helfen, mit dieser kann ..
Der Code, den ich in der page.aspx.vb verwendet wird:
Public Function showRepeater()
Try
' 1 - BLL
Dim BLLVragenRepeater As New VraagBLL
' 2 - Getting all topics
Dim alleVragenRepeater As Dataset.tblVragenDataTable
alleVragenRepeater = BLLVragenRepeater.getVraagByTopicId(5)
' 3 - creating repeater and binding with data
Dim rptRepeater As Repeater = Nothing
rptRepeater.DataSource = BLLVragenRepeater.getVraagByTopicId(5)
rptRepeater.DataBind()
' 4 - show repeater in placeholder
plcRepeater.Controls.Add(rptRepeater)
Catch ex As Exception
lblFeedback.Text = ex.Message
End Try
End Function
Der Code, den ich in der page.aspx verwendet wird:
<asp:PlaceHolder ID="plcRepeater" runat="server">
<asp:Repeater ID="rptRepeater" runat="server">
<ItemTemplate>
<ul>
<li></li>
</ul>
</ItemTemplate>
</asp:Repeater>
</asp:PlaceHolder>
Lösung
Sie benötigen Datafields in der ItemTemplate mit der DataBinder.Eval Methode .
So etwas wie ...
<ItemTemplate>
<ul>
<li><% DataBinder.Eval(rpt.DataSource, "FieldName")%></li>
</ul>
</ItemTemplate>
Andere Tipps
Sie Ihren Repeater mit einer Null-Referenz zu überschreiben:
Dim rptRepeater As Repeater = Nothing
Sie sollten das nicht tun -. Zu entfernen, die Linie und die Dinge sollten wie erwartet
Darüber hinaus sollten Sie eine Sammlung verbindlich an den Repeater und Verwendung Daten Ausdrücke um Anzeigedaten in dem Repeater-Bindung selbst.
Ohne mehr über Ihr Datenmodell zu wissen, kann ich Ihnen keine bessere Antwort geben.