Использует jQueryMobile в приложении ASP.Net Web Form правильный подход?
Каковы плюсы и минусы использования jQueryMobile или другой мобильной JS-библиотеки в веб-форме ASP.NET?jQueryMobile в ASP.NET WebForm
ответ
ASP.NET Web Forms - прекрасная инфраструктура, но вам не нужна большая часть ее для разработки мобильных приложений с фреймворками пользовательского интерфейса JavaScript. Сначала я перечислил минусы, а затем альтернативу и, наконец, дам несколько советов, когда вы должны использовать веб-формы, несмотря на минусы.
Проблема с ASP.NET Web Forms заключается в том, что вы не всегда имеете полный контроль над HTML. Это можно смягчить на using control adapters, избегая использования certain controls и используя свойства EnableViewState на элементах управления и страницах. ASP.NET Web Forms 4.0 также смягчает некоторые проблемы, такие как unpredictable client IDs. Но все это сводится к дополнительной работе, чтобы обойти природу веб-форм ASP.NET.
Кроме того, большинство веб-элементов управления будет emit JavaScript на странице модели обратной связи ASP.NET Web Forms для работы. Например, с <asp:DropDown AutoPostBack="true">
, <asp:TextBox OnTextChanged="..." >
или <asp:Panel DefaultButton="...">
. Это действительно приятно, если ваш стиль разработки в основном серверный, и вы счастливы не беспокоиться о деталях, связанных с тем, чтобы все это работало на стороне клиента.
<asp:UpdatePanel>
- еще один прекрасный пример: вы добавляете его на страницу, и у вас есть волшебная страница с поддержкой AJAX. Но он предоставляет довольно много JavaScript, все ваше состояние просмотра все равно отправляется туда и обратно между клиентом и сервером, и даже для небольшого обновления полная страница обрабатывается на стороне сервера.
Но для разработки мобильных устройств вы хотите оптимизировать свои страницы для небольших экранов и быстрого времени загрузки. Как правило, мобильные фреймворки JavaScript заботятся о сохранении состояния на стороне клиента, асинхронно отправляя и получая сообщения и обновляя представление через JavaScript. Это означает, что вся эта инфраструктура в ASP.NET Web Forms для поддержания состояния через post backs (состояние просмотра, жизненный цикл страницы) часто совершенно бесполезна, а иногда даже контрпродуктивна.
Я думаю, что в целом ASP.NET MVC лучше подходит для мобильного развития в целом, так и для JQuery Mobile, а также.
Если вы MUST использовать веб ASP.NET Forms, а затем использовать элементы управления, как в <asp:ListView>
для рендеринга HTML, который вы собираетесь использовать для списка JQuery Mobile элементов пользовательского интерфейса. Этот контроль дает вам достаточно хороший контроль над HTML.
Постарайтесь не использовать управление <asp:UpdatePanel>
, потому что тогда вы определенно смешиваете метафоры. В общем, не слишком полагайтесь на пост-спины.
Вместо этого вы можете позвонить по телефону use web methods на своей странице. Статические методы страницы с атрибутом [WebMethod]
вернут форматированные данные JSON, что сегодня отлично подходит для большинства фреймворков JavaScript. Тот факт, что эти методы must be declared as static означает, что они не участвуют в жизненном цикле страницы. Это также означает, что они имеют лучшие характеристики производительности.
Наконец, даже при использовании веб-форм, вы всегда можете использовать .ashx файлы (основные IHttpHandler и это асинхронный кузен, IHttpAsyncHandler) или веб-службы с помощью атрибута ScriptService.Эти параметры также будут мигрировать отлично, если вы решите использовать ASP.NET MVC в будущем.
Я надеюсь, что это не превратит вас в вечеринку ASP.NET WebForms.
Ответ - это как ASP.NET WebForms, так и ASP.NET MVC. Что вы используете сегодня? Что вам больше всего нравится? Сколько времени у вас есть? Каков срок выполнения проекта?
Да, элементы управления, созданные WebForm, немного раздражают, но есть работа вокруг. Да, старайтесь держаться подальше от UpdatePanel
, но вам нечего мешать использовать jQuery одновременно. Исторически было оскорблено UpdatePanel
. Период. Его хоггер ViewState, который не идеален для мобильных приложений.
В конце дня WebForms будет работать нормально, иметь жизненный цикл страницы и может выполнять некоторую прочную логику на стороне сервера. В мобильной среде я стараюсь держаться подальше от любого элемента управления runat=server
, так как хочу в основном сделать свой собственный Html и избежать ViewState
. Кроме того, статические [WebMethod, ScriptMethod]
на уровне страницы помогают организовать код.
Примечание: Мы отбросили UpdatePanel давно в пользу прямых (и более управляемых вызовов jQuery ajax). –
Я пытаюсь обратиться сюда, это jQuery mobile, а не jQuery. – Kai
- 1. заменить в asp.net webform
- 2. ASP.NET Webform Routing
- 3. asp.net Обработка формы Webform
- 4. ASP.NET MVC, гибрид Webform
- 5. MasterPage Issue - ASP.NET Webform
- 6. MVC для ASP.net Webform
- 7. Asp.net webform устройство отзывчивое
- 8. routing webform в asp.net mvc
- 9. конвертировать asp.net webform в mvc
- 10. Добавление toastr javascript asp.net webform
- 11. захват данных из ASP.NET webForm
- 12. Как скрыть полный asp.net webform
- 13. NHibernate StructureMap ASP.NET webform System.OutOfMemoryException
- 14. asp.net Браузер WebForm или MVC
- 15. Colorbox + ASP.NET WebForm Кнопка отправки
- 16. смешивание asp.net webform и asp.net mvc
- 17. ASP.NET WebForm переменной связывания в теле разметки
- 18. Bootstrap Carousel не работает в asp.net Webform
- 19. GridView не отображается в ASP.NET WebForm
- 20. Animated Image Caption в asp.net WebForm странице
- 21. Параметры отображения существующего ASP.NET WebForm в лайтбокс
- 22. Различные типы таблиц в C# ASP.NET webform
- 23. Можно ли преобразовать Asp.net Webform в MVC?
- 24. Обнаружить мобильную версию в asp.net webform - C#
- 25. Различные выходы в консоли и ASP.net Webform
- 26. Как включить GoogleMap в asp.net (WebForm)?
- 27. Использование metro ui css в asp.net webform
- 28. Как обрабатывать различные формы в asp.net webform
- 29. Введенный CSS из кода в ASP.NET WebForm
- 30. Получить пакеты NuGet в ASP.NET WebForm
спасибо..michielvoo. Поскольку я должен использовать веб-формы ASP.NET, я думаю использовать веб-методы или использовать обработчики async, но, если это возможно, я бы хотел избежать этого подхода. – Kai
Если вы не возражаете, я спрашиваю, как MVC лучше подходит для JQuery Mobile? Я видел много людей, которые просто говорят «если вы используете переключатель .NET Web Forms для MVC», но не объясняете его. Я работаю над проектом с веб-формами и имел некоторые проблемы с Postbacks и пытался перейти на WebMethod или UpdatePanels, но задавался вопросом об этом. – avivas