Я бы использовал модель представления.Я научился не открывать мои доменные объекты для представления, я скорее сопоставляю свой доменный объект с моделью представления и возвращаю эту модель представления к представлению.
Отделите вашу логику доступа к данным от вашей логики представления.Вы можете поместить весь этот оператор в класс репозитория, а затем просто вызвать этот метод из контроллера.
Вот модель частичного представления, у вас может быть больше свойств, если вам нужно отобразить больше данных:
public class UniversityViewModel
{
IEnumerable<University> Universities { get; set; }
}
Университетский класс:
public class University
{
public string Name { get; set; }
public string Idoffice { get; set; }
}
В моем методе действия моего контроллера это выглядело бы примерно так:
public ActionResult Index(int id)
{
UniversityViewModel viewModel = new UniversityViewModel
{
Universities = universityRepository.GetAll()
};
return View(viewModel);
}
И, на мой взгляд, я бы получилследующее:
<table>
@foreach(University university in Model.Universities)
{
<tr>
<td>Name:</td>
<td>university.Name</td>
</tr>
}
</table>
Это просто базовое отображение данных в представлении, вы можете использовать сторонние компоненты для отображения ваших данных с некоторыми функциями.