Когда мне нужно использовать поиск Я обычно включаю в себя свойство ID в классе вида модели, так что я могу использовать его таким образом в соответствующем представленииКак обращаться с поиском?
<%= Html.LabelFor(model => model.LookupTableID)%>
<br />
<%= Html.DropDownListFor(model => model.LookupTableID, Model.LookuptableList, new {}) %>
, имеющее Model.LookuptableList
как свойство в самой модели, как это:
public IEnumerable<SelectListItem> LookuptableList {
get {
return GetLookuptableList().Select(
t => new SelectListItem { Text = t.Description, Value = t.LookupTableID.ToString() });
}
}
Но я не уверен, что это хороший способ справиться с этим из-за функции GetLookuptableList()
внутри класса вид модели.
есть ли лучший/чистый способ сделать это?
Ну, что такое 'GetLookuptableList()' then? Почему, по вашему мнению, проблематично, чтобы этот метод был в модели? –
Эта функция восстанавливает список поиска из основного хранилища. Я не думаю, что это проблематично. Я просто думаю, что не должно быть там. Пребывание в модели не следует должным образом разделять проблемы .... – Lorenzo
Да, Лоренцо. Я думаю, что доступ к базовому хранилищу из модели представления - уровень Презентации - может быть заменен членом IEnumerable, заполненным на уровне контроллера. - Уровень приложения. поэтому ваш viewModel может оставаться агностиком от доступа к базовому хранилищу – SDReyes