Внешний ключ не отображается в поле зрения - PullRequest
2 голосов
/ 24 ноября 2011

Я немного новичок в подходе MVC.Сначала я начал с модели базы данных.В настоящее время у меня есть две таблицы:

  • Светильники
  • Команды

Светильники (среди прочих полей) имеют FK-ссылку на командный стол дома и на выездеteam.

 public class Team
 {        
    public virtual int TeamId { get; set; }
    public virtual string Name { get; set; }
    public virtual int DivisionId { get; set; }
 }

 public class Fixture
 {
    public int FixtureId { get; set; }
    public DateTime Date { get; set; }
    public Team HomeTeam { get; set; }
    public Team AwayTeam { get; set; }
 }

Я замечаю, что когда речь идет о FixtureController, оба объекта HomeTeam и AwayTeam равны нулю.Должен ли я каким-то образом подключить это внутри контроллера или он должен автоматически установить соединение?

Так что в идеале тогда в представлении я могу иметь:

<td>
        @Html.DisplayFor(modelItem => item.HomeTeam.Name)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.AwayTeam.Name)
    </td>

Так что я полагаю, что мой вопрос заключается в том, какя могу заставить мой контроллер сделать ссылку от Fixtures-> Team?

Спасибо

1 Ответ

3 голосов
/ 24 ноября 2011

В вашем контроллере используйте .Include для получения данных.Смотрите также: Загрузка связанных объектов

var fixtures = db.Fixtures // The fixture data
    .Include(fixture => fixture.HomeTeam)  // Bring in the HomeTeam
    .Include(fixture => fixture.AwayTeam); // Bring in the AwayTeam
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...