У меня очень ограниченное знание страниц бритвы .net mvs. надеюсь, мой вопрос имеет смысл.
У меня есть база данных фильмов с:
а. таблица мультимедиа (DVD, VHS и т. д.)
б. таблица жанров
с. таблица фильмов
Я бы хотел иметь возможность щелкнуть по типу мультимедиа (например, DVD) и получить список жанров, которые у меня есть на DVD. Я создал хранимую процедуру для этого и страницу бритвы, которая делает это успешно.
У меня также есть хранимая процедура, которая отображает фильмы определенного жанра. И страница бритвы, которая генерирует все фильмы в жанре.
Проблема, которую я пытаюсь решить, связывает эти два. Как мне попасть в этот поток: нажмите на dvd => список всех моих жанров DVD => нажмите на жанр «Триллер» и отобразите все DVD, которые являются триллерами.
На моей странице бритвы «Медиа» я перечисляю типы медиа и отображаю модель жанров, которая генерирует жанры, когда я выполняю свой список «MediaByGenre». Код ниже:
@page
@model MyMovies.Pages.GenreDetails.DetailsModel
@{
ViewData["Title"] = "Details";
}
<h4>Genres</h4>
<hr />
<div>
<table>
<tr>
<th>Genre</th>
</tr>
@foreach (var item in Model.Genres)
{
<tr>
<td class="col-sm-10">
@Html.DisplayFor(Model => item.GenreName)
</td>
</tr>
}
</table>
</div>
<div>
<a asp-page="./Index">Back to List</a>
</div>
На моей странице бритвы "Жанр" я показываю модель моего фильма, которая выполняет процедуру генерации "GetMovieByGenre". Вот код бритвы ниже:
@page
@model MyMovies.Pages.MovieDetails.DetailsModel
@{
ViewData["Title"] = "Details";
}
<table col-width=500>
<tr>
<th class="col-sm-2">Movie Title</th>
<th class="col-sm-2">Movie Year</th>
</tr>
@foreach (var item in Model.Movies)
{
<tr>
<td class="col-sm-10">
@Html.DisplayFor(Model => item.MovieTitle)
</td>
<td class="col-sm-10">
@Html.DisplayFor(Model => item.MovieYear)
</td>
</tr>
}
</table>
<div>
<a asp-page="./Index">Back to List</a>
</div>
Я попытался использовать a-tag здесь:
<td class="col-sm-10">
@Html.DisplayFor(Model => item.GenreName)
</td>
для ссылки на модель фильма, сгенерированную для каждого жанра, но это не работает, потому что я могу использовать только одну модель (модель жанра). Это требует использования частичного представления? Или я могу решить это в моем файле .cshtml.cs, используя какой-нибудь C-Linq? Я не хочу тратить слишком много энергии на неправильный маршрут.