У меня есть страница ASP.NET, которая взаимодействует с бизнес-классом. Я хочу постоянно обновлять элементы управления на моей странице на основе введенных пользователем значений, например. обновить итоги. Вычисления встроены в бизнес-логику, но они достаточно просты, чтобы их можно было воспроизвести в другом месте. Я придумал три способа сделать это:
- Динамически обновлять страницу с помощью JavaScript. Я не хочу этого делать, потому что не хочу рисковать математическими проблемами с плавающей запятой, когда значения на странице не соответствуют значениям, рассчитанным бизнес-классом (эти свойства являются десятичными).
- Очистите вычисляемые поля при изменениях и заставьте пользователя нажать кнопку перерасчета. Это плохой пользовательский опыт, а подключение JavaScript к элементам управления ASP.NET утомительно.
- Используйте AJAX UpdatePanel, установите элементы управления вводом данных для автоматической отправки и обработайте событие «изменено» для элемента управления, например. TextChanged для текстового поля.
Третий метод кажется мне самым чистым, обеспечивает приятный пользовательский интерфейс и позволяет мне напрямую взаимодействовать с моим бизнес-классом, который я сохранил в состоянии сеанса.
Мой вопрос: это хорошая идея и/или обычная практика? Есть ли лучшие способы сделать это?
Я не работал с ASP.NET несколько лет и у меня есть предубеждение против автопостбэка[1]. Я посмотрел на размер запроса, и в настоящее время он незначителен - 1,5 КБ. Сайт будет редко использоваться, но у нас может быть небольшое количество пользователей с коммутируемым подключением.
- И ASP.NET в целом, но времена тяжелые.