Я довольно новичок в MVC, и у меня возникают проблемы с работой с нормализованной моделью данных (просто список фильмов и их список броска). У меня есть настройки модели следующие три данных (упрощенный), которая является одним из основных многие-ко-многим отношений:MVC .NET - нормализованная модель данных
public class Movie
{
public int Movie_Id { get; set; }
public string Title { get; set; }
public string Director { get; set; }
public DateTime Release_Date { get; set; }
public MovieCast movieCast { get; set; }
}
public class MovieCast
{
public int Movie_Actor_Id { get; set; }
public int Movie_Id { get; set; }
public int Actor_Id { get; set; }
public Movie movie { get; set; }
public Actor actor { get; set; }
}
public class Actor
{
public int Actor_Id { get; set; }
public string First_Name { get; set; }
public string Last_Name { get; set; }
public string Gender { get; set; }
public DateTime Birthdate { get; set; }
public MovieCast movieCast { get; set; }
}
Я ищу, чтобы отобразить весь список актеров от контроллера MovieCast. В файле Index.cshtml У меня есть следующие
<tr>
<th>
@Html.DisplayNameFor(model => model.Movie_Id)
</th>
<th>
@Html.DisplayNameFor(model => model.Actor_Id)
</th>
<th>
@Html.DisplayNameFor(model => model.actor.First_Name)
</th>
<th></th>
</tr>
Окончательный DisplayNameFor дает мне ошибку, говоря, что «MovieCast» не содержит определения для «актера», даже если он явно объявлен в модели.
Есть ли у кого-нибудь идеи, или мне нужно переосмыслить решение?
Как выглядит ваш код действия? Я предполагаю, что вы не создали все экземпляры и «актер» является «нулевым» – Justin
В его простейшей форме, это выглядит следующим образом: общественного индекс ActionResult() { возвращение View (новый список()) ; } –
Cailean
Если это так, вы не создаете экземпляр актера, поэтому он возвращает «null», если это «null», никакие значения не могут быть извлечены из него. – Justin