0

Я ищу перемещение веб-сайта с веб-страниц ASP.NET в MVC. Мне нужно понять, как я делаю mutliple join, используя сущность framework.Несколько соединений с использованием Entity Framework

В настоящее время у меня есть 3 таблицы базы данных с каждой моделью.

  • Недвижимость
  • Номер
  • RoomType

ниже код получает всю информацию из таблицы номеров для каждого свойства, но это только дает мне RoomTypeID из Rooms таблицы. Мне нужно получить RoomType из таблицы RoomType, используя этот идентификатор.

@model manage.stayinflorida.co.uk.DataModels.Property_Info 

    @foreach (var item in Model.RoomInfoes) 
    { 
     <tr> 
      <td> 
       @Html.DisplayFor(modelItem => item.RoomTypeID) 
      </td> 
      <td> 
       @Html.DisplayFor(modelItem => item.RoomDescription) 
      </td> 
     </tr> 
    } 
+0

Ищите некоторые примеры подключения для сущности. Кроме того, посмотрите на свойства навигации ... – Luke

+1

Возможный дубликат [MVC 5 нескольких моделей в одном представлении] (http://stackoverflow.com/questions/23536299/mvc-5-multiple-models-in-a-single- view) –

ответ

2

Обычно с помощью Entity Framework вы получаете свойство Navigation на своих объектах, если у них есть отношение внешнего ключа.

Это означает, что вы также можете получить доступ к собственности из соответствующего типа.

Если RoomInfos класс имеет свойство RoomType типа RoomType (который связан с RoomTypeID), следовательно, вы можете получить доступ к этим в модели.

Пример показан ниже - пример предполагает, что у вас есть свойство «RoomType» под названием «Имя».

@model manage.stayinflorida.co.uk.DataModels.Property_Info 

@foreach (var item in Model.RoomInfoes) 
{ 
    <tr> 
     <td> 
      @Html.DisplayFor(modelItem => item.RoomType.Name) 
     </td> 
     <td> 
      @Html.DisplayFor(modelItem => item.RoomDescription) 
     </td> 
    </tr> 
} 

Дополнительную информацию о навигационных свойствах см. На странице this link.

+0

Это именно то, что я был после, спасибо Робу. Ссылка на свойства навигации также очень полезна. – Gavin5511

Смежные вопросы