powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / EnumDropDownListFor
16 сообщений из 16, страница 1 из 1
EnumDropDownListFor
    #39024804
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос глупый наверное. Решил я заменить DropDownListFor с созданием искусственных коллекций по enum в хелпере на коробочное EnumDropDownListFor, и чет я не понял почему оно не выбирает выбранное значение после поста.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
enum Some{
First,
Second
}
class ViewModel
{
public Some? SearchSome{get;set;}
}


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public ActionResult Index(ViewModel model, int page = 1)
{
//apply filter
return view(model)
}
[HttpPost]
public ActionResult ActionPost(ViewModel model)
{
   return RedirectToAction("Action", model);
 }


Код: c#
1.
2.
3.
..
 @Html.EnumDropDownListFor(x => x.SearchSome)
..

в перегрузках только атрибуты хтмл и надпись если ничего не выбрано. что я делаю не так
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39024813
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuв перегрузках только атрибуты хтмл и надпись если ничего не выбрано. что я делаю не так

Дложно работать, кака версия MVC?
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39024814
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если про мвц то 5.2.3.0, с нугета все подтянул последнее
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025033
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

у тебя наверное POST-REDIRECT-GET

конечно не будет работать, состояние при посте теряется. а так, работает, в 5.2.3 точно должно, я проверял.
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025035
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что значит меняется состояние? в метод приходит нужное значение ж.
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025040
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и мне кажется цепочка POST-REDIRECT-GET довольно-таки частая поскольку, пост просто прокидывает данные в гет где вся фильтрация и находится
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025055
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

ну фих знает, я POST-REDIRECT-GET не люблю, потому что теряется информация из контекста TemplateInfo. а так проверил, работает. правда я не юзал его на практике, потому что уже давно свои есть кошерные приблуды :)
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025063
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public ActionResult Index(ViewModel model, int page = 1)
{
//apply filter
return view(model)
}
[HttpPost, ActionName("Index")]
public ActionResult ActionPost(ViewModel model)
{
   return Index(model);
 }


заработало. но казалось мвц какое состояние )
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025115
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но к примеру я б хотел после поста чтоб в урл отразился фильтр, хотя бы чтоб скинуть другому клиенту сссылку мол вот то что ты искал
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025139
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ндя разочарование. ну ладно я сделал этот костыль но в пейджинге фильтр прокидывается но выставляется ничерта. походу надо возвращаться на старый добрый DropDownListFor где все работает удивительно
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025206
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuндя разочарование. ну ладно я сделал этот костыль но в пейджинге фильтр прокидывается но выставляется ничерта. походу надо возвращаться на старый добрый DropDownListFor где все работает удивительно

да
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025259
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

да едрить за ногу мс
если в урл кинуть к примеру url?Some=First EnumDropDownListFor не отрабатывает get
если в урл кинуть вот так url?Some=1 то все отрабатывает как надо
при этом в модели и там и там значение First , благо биндер то понимает что эт такое.
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025550
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuhVostt,

да едрить за ногу мс
если в урл кинуть к примеру url?Some=First EnumDropDownListFor не отрабатывает get
если в урл кинуть вот так url?Some=1 то все отрабатывает как надо
при этом в модели и там и там значение First , благо биндер то понимает что эт такое.

стандартный биндер весьма уныл и убог, я всегда его расширяю. часто требуется поддержка [Flags] enum, которые стандартный биндер вообще не кушает, ещё бывают траблы с числами (запятая) и датами. в общем, на стандартный биндер полагаться нельзя
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025837
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

ну биндер да если не хватает я тоже расширяю но он понимает то что в урл, значение есть, но чего я не понимаю почему внутри EnumDropDownListFor выбор идет через кастование в int)
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025855
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuно чего я не понимаю почему внутри EnumDropDownListFor выбор идет через кастование в int)

наверное потому, что enum это натуральное число (обычно, в 99% int) :)

кстати, другие 3dparty контролы тоже интерпретируют enum как число и никак иначе, в JSON сериализуются туда/обратно как числа, так что прими это как закономерность
...
Рейтинг: 0 / 0
EnumDropDownListFor
    #39025960
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
да я понимаю все эт, но зачем тогда когда пишешь при создание ссылки new {temp = enum} он выводит enum.tostring()) вместо int) вопросов бы не возникло бы тогда у меня.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / EnumDropDownListFor
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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