Nested Repeater, Begrænsningen kan ikke aktiveres, C#
Hej alle eksperter.Jeg står her med et problem. Jeg er igang med at lave et artikel system, hvor en bruger kan oprette en artikel. Men jeg har et problem hvis jeg når jeg vil bruge min nested repeater. For hvis en bruger ikke har oprettet en artikel siger den fejl. (Begrænsningen kan ikke aktiveres, for der er ikke tilsvarende overordnede værdier for alle værdier.)
Min kode ser sådan her:
<%@ Page Language="C#" Debug="true"%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="MySql.Data.MySqlClient" %>
<html>
<head>
<title>Master Detail information in Data Repeater </title>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
string strSql, strConn;
DataSet ds= new DataSet();
strConn = ConfigurationManager.ConnectionStrings["SqlConnectionString"].ConnectionString;
strSql = "select ForfatterID,Overskrift,Tekst,ID from aspnetArtikel";
MySqlDataAdapter daCust = new MySqlDataAdapter(strSql, strConn);
daCust.Fill(ds, "Artikler");
strSql = "select id,Brugernavn from aspnetBruger";
MySqlDataAdapter daOrders = new MySqlDataAdapter(strSql, strConn);
daOrders.Fill(ds, "Brugere");
DataRelation rel = new DataRelation("ArtikelRel", ds.Tables["Artikler"].Columns["ForfatterID"], ds.Tables["Brugere"].Columns["id"]);
ds.Relations.Add(rel);
RepCust.DataSource = ds.Tables["Artikler"];
RepCust.DataBind();
}
void ShowOrders(Object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
((Repeater)e.Item.FindControl("RepOrders")).DataSource = ((DataRowView)e.Item.DataItem).CreateChildView("ArtikelRel");
((Repeater)e.Item.FindControl("RepOrders")).DataBind();
}
}
</script>
</head>
<body>
<H2>Artikler</H2>
<asp:Repeater runat="server" id="RepCust" onItemDataBound="ShowOrders">
<HeaderTemplate>
<!-- Table -->
<table>
</HeaderTemplate>
<ItemTemplate>
<!-- Row -->
<tr>
<td>
<a href="show.aspx?id=<%# ((DataRowView)Container.DataItem)["id"] %>"><%# ((DataRowView)Container.DataItem)["Overskrift"] %> </a>
<br />
<!-- Repeater 2 --><asp:Repeater id="RepOrders" runat="server"><ItemTemplate>
Skrevet af brugeren: <%# ((DataRowView)Container.DataItem)["Brugernavn"]%>
</ItemTemplate></asp:Repeater><!-- // Repeater 2 -->
</td>
</tr>
<!-- // Row -->
</ItemTemplate>
<FooterTemplate>
</table>
<!-- // Table -->
</FooterTemplate>
</asp:Repeater>
</body> </html>