powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
7 сообщений из 7, страница 1 из 1
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39006975
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.
Заинтересовал вопрос. Хочется оптимизировать работу выпадающего списка.

Мы можем вернуть лишь одно свойство для выбранного в списке элемента. Но хотелось бы вернуть два и более.

Такой пример:
Код: c#
1.
2.
3.
4.
5.
6.
model.ActionsList = from action in actionTypes
                                select new SelectListItem
                                {
                                    Text = action.ToString(),
                                    Value = ((int)action).ToString()
                                };


и вьюха:
Код: c#
1.
@Html.DropDownList("SelectedKod", Model.ActionsList)



Можно ли как-то сделать чтобы в Value можно было передавать какую-то сложную сущность, передавая несколько свойств а не одно ? Например ID записи и FIO

Для чего ?
В методе HttpGet заполняем список из базы.
В методе httpGet нужно получить выбранное значение - и получить полную расшифровку элемента (его FIO) без лишнего обращения к базе, и фильтрации по выбранному ID. Сразу со страницы получить и ID и расшифровку.
...
Рейтинг: 0 / 0
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39007052
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В методе HttpPost нужно получить выбранное значение - и получить полную расшифровку элемента (его FIO) без лишнего обращения к базе, и фильтрации по выбранному ID. Сразу со страницы получить и ID и расшифровку.
...
Рейтинг: 0 / 0
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39007055
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надеюсь я правильно понял что хотел ТС
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
class ViewDto{
id
Name
...

public string FormatText()
{
return string.format("{0} ....", name, .....)
}
}


Код: c#
1.
2.
3.
4.
5.
6.
7.
model.ActionsList = from action in actionTypes
                                select new ViewDto
                                {
                                   Id = x.Id,
                                   Name =x.name
.....
                                };



Код: c#
1.
2.
3.
4.
5.
@Html.DropDownListFor(x => x.Id, Model.ActionsList .Select(x => new SelectListItem
                {
                    Text = x.FormatText(),
                    Value = x.Id.ToString()
                }))
...
Рейтинг: 0 / 0
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39007059
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotekВ методе HttpPost нужно получить выбранное значение - и получить полную расшифровку элемента (его FIO ) без лишнего обращения к базе, и фильтрации по выбранному ID. Сразу со страницы получить и ID и расшифровку.
ну вот жирное у вас не прокатит стандартным DropDownList, потому что возвращается на посте только значение. ВЫ можете прокинуть в значение помимо id и все остальное, но тогда стоит посмотреть в сторону биндера чтоб потом распарсить все эт на посту
...
Рейтинг: 0 / 0
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39007071
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

в этом и вопрос - прокинуть "все остальное". Чтобы не пришлось лезть в БД, чтобы узнать какую Фамилию там выбрал Юзер из списка, по ID.

Как бы это сделать ?
...
Рейтинг: 0 / 0
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39007078
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1 ну я ж написал можете прокинуть в значение а потом парсить
2 можно прокинуть при выборе в селекте в скрытое поле то что было в тексте селекта или его атрибутах
...
Рейтинг: 0 / 0
Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
    #39007154
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotekhandmadeFromRu,

в этом и вопрос - прокинуть "все остальное". Чтобы не пришлось лезть в БД, чтобы узнать какую Фамилию там выбрал Юзер из списка, по ID.

Как бы это сделать ?

..не посылайте сразу по выбору значение в контроллер, а повесьте на него джава-скрипт, который отправит, например, $.ajax .. а в него уж засовывайте хоть массив чего угодно ...
ЗЫ: я понимаю, что это не стандартный MVC получается, но у вас и запрос не стандартный ...
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Html.DropDownList - как получить несколько свойств выбранного элемента (а не один)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]