2014-02-20 15 views
0

может Вы мне помочь в этой ситуацииКак это сделать?

У меня есть три таблицы

первый хранятся usersgroup ugroup - первичный ключ имя_группы - имя группы

вторых сохраненные пользователи UID - первичный ключ ugroup - Int имя пользователя и т. Д. .....

В третьей таблице есть список учителей f или каждый пользователь teachId - первичный ключ UID - INT ..........

поэтому эта работа запрос штраф в контроллере

var viewUsers= db.UsersGroup.Include("Users").ToList(); 

и ввиду

я могу OUTP всех моих групп и пользователей, которые находятся в них

@foreach(var ug in @Model.viewUsers) 
{ 
ug.groupName 
    foreach(var u in ug.Users) 
    { 
       u.UserName; 
    } 
} 

так, но я хочу, чтобы построить таблицу в режиме, чтобы показать эту информацию:

<caption>GroupName</caption> 
<th>UserName</th><th>Count of teachers</th> 
<td> John Smith</td><td>3</td> 

Так как же я должен построить запрос для построения таблицы в моем представлении, как показано выше?

И я, если вы можете дать некоторую ссылку, где я могу прочитать, как я могу использовать EF для создания varios-запросов к моей базе данных (например, присоединяется uinions и другие), и я не понимаю, как метод работы Include() i попытаться chnge моей предыдущей строку как: db.UserGroups.Include(ug => ug.Users), но он не работает :(

Спасибо

+0

Вы использовали viewmodel? Можете ли вы показать нам свой код viewmodel? – HOKBONG

+0

Я не уверен в структуре ваших таблиц, но вы можете включить их, если они структурированы, поскольку я suppouse var viewUsers = db.UsersGroup.Include («Пользователи»). Include («учителя»). ToList(); –

+0

Нет I havent Use ViewModel – user3323401

ответ

0
var viewUsers= db.UsersGroup.Include("Users.Teachers").ToList(); 

, а затем в окне вы можете получить список учителей для каждого пользователя

@foreach(var ug in @Model.viewUsers) 
    { 
     ug.groupName 

     foreach(var u in ug.Users) 
     { 
      &nbsp;&nbsp;u.UserName; 

      <th>u.Teachers.Count</th> 

      foreach(var teacher in u.Teachers) 
      { 
       <td>teacher.Name</td> 
      } 

     } 
    } 
. 0
+0

Момент Я стараюсь делать то, что вы посоветуете – user3323401

+0

Нейл Большое спасибо ... каждый думаю, что это работа ... Можете ли вы дать некоторую ссылку, где я могу прочитать поединок по всем аспектам этой темы? – user3323401

+0

У меня на самом деле нет ссылки ... Я уверен, что google делает – NeilPearson