У меня есть страница ASP.NET, взаимодействующая с бизнес-классом. Я хочу постоянно обновлять элементы управления на своей странице на основе введенных пользователем значений, например. обновить итоги. Расчеты встроены в бизнес-логику, но они достаточно просты, чтобы воспроизвести их в другом месте. Я подумал о трех способах достижения этой цели:Постоянно обновлять страницу ASP.NET с помощью AJAX
- Динамическое обновление страницы с использованием JavaScript. Я не хочу этого делать, потому что я не хочу рисковать математическими проблемами с плавающей запятой, где значения на странице не соответствуют значениям, рассчитанным бизнес-классом (эти свойства являются десятичными).
- Очистить вычисленные поля от изменений и заставить пользователя нажать кнопку пересчета. Это плохой опыт работы с пользователями и подключение JavaScript к элементам управления ASP.NET является утомительным.
- Используйте AJAX UpdatePanel, установите элементы управления вводом данных в autopostback и обработайте «измененное» событие для элемента управления, например. TextChanged для TextBox.
Третий способ кажется мне самым чистым, обеспечивает приятное взаимодействие с пользователем и позволяет мне напрямую взаимодействовать с моим бизнес-классом, который я сохранил в состоянии сеанса.
Мой вопрос: Является ли это хорошей идеей и/или обычной практикой? Есть ли лучшие пути для этого?
Я не работал ASP.NET в течение нескольких лет, и у меня есть предвзятое отношение к автоповтору [1]. Я посмотрел размер запроса, и в настоящее время он пренебрежимо мал на 1,5 КБ. Сайт будет использоваться мало, но у нас может быть небольшое количество пользователей с коммутируемыми соединениями.
- И ASP.NET в целом, но времена жесткие.
Прямой ashx w/jayrock, asp.net mvc с jsonresult и услугой wcf - все это приличные варианты в этой строке. – Tracker1
Это хорошие ответы, но у меня нет времени изучать несколько новых технологий для этого проекта. –