Возможно ли выполнить внешний ключ модели для доступа к другой модели в представлении? Я хочу вернуть один тип модели моему представлению, но получить данные из другой модели. Например, на мой взгляд:Использование связей внешних ключей в объекте Views
@[ModelObject].[Field (ForeignKey)].[ForeignKey Field]
Edit:
Ваш отзыв был полезным до сих пор, и это звучит как вид Модель может быть путь, но позвольте мне, чтобы обеспечить немного больше информации, чтобы вы могли лучше посоветовать.
У меня есть x.Id
, и я хочу, чтобы найти все Y
объекты, связанные с x.Id
- это отображение проводится в таблице XYMap
где несколько Y.Id
сек карте одному X.Id
. Обе эти модели находятся в одной и той же сущности:
public class X
{
[Key]
public int xId {get; set;}
}
public class XYMap
{
[Key, ForeignKey("Y")]
public int yId { get; set; }
[ForeignKey("X")]
public int xId { get; set; }
}
public class Y
{
[Key]
public int yId { get; set; }
}
То, что я пытался сделать это, дается x.Id
называется someXid
:
var yIdList = db.XYMap.Where(item => item.xId == someXid).ToList()
Я хочу, чтобы получить все Y объекты, так что я могу отобразить их данные в представлении.
Если вы используете сущность framework, и вы отобразили навигацию, вы должны просто иметь возможность linq.include ("entity-name"); Я думаю, что это даст вам то, что вы хотите (нетерпеливая загрузка, а не ленивая загрузка) –
Я не отображал навигацию, и поэтому она не показывалась. Получил это сейчас. Все еще интересно, будет ли это приводить к чрезмерным хитам db, как сказано ниже. –
это должно привести к противоположному. Нежелательная загрузка. Передача полезных нагрузок будет больше. Но MVC оптимизирован для их обработки. –