После вашего последнего комментария pass many data to pass in the view
вам следует использовать модель представления.
Что-то вроде:
public class ViewModel
{
public List<string> Places { get; set; }
public List<string> MostFavoritePlaces => Places.Take(3).ToList();
public List<string> FavoritePlaces => Places.Skip(3).ToList();
public ViewModel()
{
Places = new List<string>{ "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH", "II", "JJ" };
}
}
Затем в вашем контроллере вы можете вернуть модель представления на страницу. as:
public class HomeController : Controller
{
private ViewModel viewModel = new ViewModel();
public IActionResult Index()
{
return this.View(viewModel);
}
Представление получит параметр типа ViewModel, например:
@model ViewModel;
@{
ViewData["Title"] = "Home Page";
}
<ul class="list-group">
<li class="list-group-item active">We Love These</li>
@foreach (var x in Model.MostFavoritePlaces)
{
<li> @x </li>
}
</ul>
<ul class="list-group">
<li class="list-group-item active">Our Fav</li>
@foreach (var x in Model.FavoritePlaces)
{
<li> @x </li>
}
</ul>
Теперь класс ViewModel отвечает за структуру данных, которая будет отображаться в представлении. Он может иметь больше свойств для обработки большего количества данных, отправляемых в представление. Он инкапсулирует данные и логи c.
Контроллер отвечает за создание экземпляра модели и передачу его в представление.
Представление имеет небольшую логику c - просто получить модель - и просто отображает данные, которые были переданы.