Привязка данных двух таблиц sql к одному повторителю - PullRequest
0 голосов
/ 26 октября 2010

Я очень новичок в использовании Linq-to-SQL, поэтому я задаю этот вопрос.Я искал сайт, но не могу понять, как это сделать.

Моя проблема:

У меня есть база данных, сопоставленная с LINQ to SQL:

Таблица 1: Персональные задачи

TaskId
Header
[Content]
IsDone
CreatedDate

Таблица 2: Комментарии

CommentId
TaskId
UserId
Comment
CreatedDate

У меня есть повторитель:

<asp:Repeater ID="PersonalTaskRepeater" runat="server">
   <ItemTemplate>
      <%#Eval("Header") %>
      <%# Eval("Content") %>
      Task done: <asp:CheckBox ID="IsDoneCheckBox" runat="server" Checked='<%#Eval("IsDone") %>' /><img src="Images/tick-circle.png" />

     Here i want to access the comment table, with the comments related to the taskID
   </ItemTemplate>
</asp:Repeater>

Я пытался использовать: <%#Eval("Comment.Comment1")%>, но выдает эту ошибку:

Привязка данных: 'System.Data.Linq.EntitySet`1 [[Assistr.Models.Comment, Assistr,Версия = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null]] 'не содержит свойство с именем «Комментарий».

Мой код позади:

var tasks = db.PersonalTasks.OrderBy(x => x.IsDone).ToList();
                PersonalTaskRepeater.DataSource = tasks;
                PersonalTaskRepeater.DataBind();

Нужно ли использовать 2 повторителя, чтобы делать то, что я хочу, или?:)

Заранее спасибо:)

// Mads

1 Ответ

0 голосов
/ 26 октября 2010

Полагаю, если вы хотите, чтобы содержимое было в одном и том же повторителе, вам пришлось бы подготовить источник данных, чтобы данные были эффективно объединены и использовались те же имена полей. Если 2 набора данных отличаются, то почему они находятся в одном повторителе? Что ты пытаешься сделать.

...