Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / asp.net mvc enum required / 3 сообщений из 3, страница 1 из 1
22.05.2015, 10:53
    #38966064
deniskodua
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
asp.net mvc enum required
использую asp.net mvc 5
нужно сделать валидацию странички, некоторые поля должны быть обязательными, для полей с nullable типами использую required атрибут и все работает хорошо, но есть поля типа enum (и они не null) и мне нужен аналог required атрибута только для enum’а, находил статьи в инете, создавал свой атрибут, вешал на свойство, но не заработало(( подскажите как это сделать ?
...
Рейтинг: 0 / 0
22.05.2015, 11:41
    #38966145
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
asp.net mvc enum required
deniskodua,
Ну так сделайте ваш enum как nullable и все должно заработать.
...
Рейтинг: 0 / 0
22.05.2015, 11:58
    #38966174
deniskodua
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
asp.net mvc enum required
Axeleron,

пробовал, не заработало, вот моя разметка
Код: c#
1.
2.
            @Html.SelectTypeFor(m => m.Zzclserv03, Model.Zzclserv03, null, "Выберите из списка")            
            @Html.ValidationMessageFor(m => m.Zzclserv03)




Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
  public static System.Web.Mvc.MvcHtmlString SelectTypeFor<TModel, TEnum>(this System.Web.Mvc.HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TEnum>> expression, Enum enumType, object attribute = null, string label = "")
        {
            List<System.Web.Mvc.SelectListItem> selectList = (
                from Enum status in Enum.GetValues(typeof(TEnum))
                select new System.Web.Mvc.SelectListItem
                {
                    Text = status.GetDescription(),
                    Value = status.ToString(),
                    Selected = object.Equals(status, enumType)
                }).ToList<System.Web.Mvc.SelectListItem>();
            if (string.IsNullOrEmpty(label))
            {
                return htmlHelper.DropDownListFor(expression, selectList, attribute);
            }
            return htmlHelper.DropDownListFor(expression, selectList, label, attribute);
        }




а вот если заменить на
Код: c#
1.
html.editorfor(m => m.Zzclserv03)


то работает, но это не выпадающий список...
p.s. в asp.net mvc 5.1 есть поддержка enam'ов и для
Код: c#
1.
html.editorfor(m => m.Zzclserv03)

будет создан выпадающий список и все будет работать как надо, но у меня 5 версия
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / asp.net mvc enum required / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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