Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / [MVC] Проценты / 3 сообщений из 3, страница 1 из 1
08.11.2013, 06:22
    #38457304
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[MVC] Проценты
Нужно в поле редактировать «человеческие» проценты: 50, 42, 100, 99.9...
а сохранять в виде дроби: 0.5, 0.42, 1, 99.9...

Ну и две проблемы, соответственно, при выводе и при вводе.

При выводе формат {0:P} впендюривает в поле знак процента, и отменить это никак нельзя.
При вводе стандартный биндер не делит полученное значение на 100 (правильно, откуда ж ему знать).

Есть 3 решения (в моём порядке предпочтения):

1. Все преобразования выполняем на уровне DTO <--> ViewModel
2. Добавляем свой атрибут, вешаем его на "процентные" свойства, расширяем стандартный биндер, добавляем кастомный темплейт "Shared/EditorTemplates/Percentage.cshtml"
3. Вешаем на страницу небольшой скриптик, который на клиенте превращает поля с процентами в скрытое, а вместо него рендерит фейк для вывода/ввода в нужном формате, ну и апдейтит скрытое поле при изменении фейка.

Какое на ваш взгляд the best? Или, может, есть ещё варианты?
...
Рейтинг: 0 / 0
08.11.2013, 07:41
    #38457324
Dmitry Gurianov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[MVC] Проценты
hVosttПри вводе стандартный биндер не делит полученное значение на 100 (правильно, откуда ж ему знать).
get, set?
...
Рейтинг: 0 / 0
08.11.2013, 11:52
    #38457580
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[MVC] Проценты
Dmitry Gurianovget, set?

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


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