Я понимаю, что это может быть довольно простой вопрос - но у меня возникли некоторые проблемы (как начинающий разработчик ASP.NET). Я получил несколько идей от SO и Google без удачи, и я думаю, что начинаю задумываться над этим, кажется, что это такой стандартный сценарий, что я считаю, что упускаю что-то очевидное.
У меня есть, например, три стандартных примера таблиц - обратите внимание на отношение «многие ко многим».
Students
- student_id
- forename
- surname
Courses
- course_id
- course_name
StudentCourses
- studentcourse_id
- course_id
- student_id
Я бы хотел отобразить их в моем веб-приложении ASP.NET 3.5 так, чтобы они выглядели примерно так (последний столбец - кнопка, позволяющая им редактировать информацию об ученике):
Students:
# Name Courses Actions
1 Joe Bloggs Maths, English [Manage]
2 Arthur Sleep English [Manage]
3 Andy Mann Maths, German, French [Manage]
Колонка «курсы» представляет собой список курсов, на которые в данный момент зачислен студент. Это может быть пустой (еще не зачисленный) или содержать список (с разделителями-запятыми или стандартный неупорядоченный список HTML, я не драгоценен) их текущих курсов. Это не будет большим списком, поскольку студент может записаться только на несколько курсов одновременно.
Я пробовал несколько решений, от asp: Repeater до моего текущего фаворита, ListView, который шел с 3.5. Я использую LINQ to SQL в качестве слоя данных (в случае, если это важно из-за сложной поддержки LINQ отношений «многие ко многим»).