Теги на стороне сервера ASP.NET против пользовательского интерфейса на основе JavaScript и REST - PullRequest
3 голосов
/ 11 марта 2009

Я занимаюсь разработкой «традиционных» приложений ASP.NET с серверными элементами управления ASP.NET и кодом за файлами и т. Д. Теперь я изучаю несколько библиотек JavaScript, таких как: jQuery, YUI, Ext Js, Prototype. (также трудно выбрать один, но это другой пост). Все эти библиотеки значительно упрощают взаимодействие между клиентом и сервером, но они также предлагают хороший набор очень элегантных элементов управления пользовательским интерфейсом. И некоторые элементы управления, на мой взгляд, более изящны, чем элементы управления на стороне сервера ASP.NET.

Но сейчас я подвергаю сомнению традиционную модель ASP.NET. Я склоняюсь ко всему пользовательскому интерфейсу HTML / JS, общающемуся с сервером (просто страница aspx) через REST. Как вы думаете? Кто-нибудь использовал этот подход? Каковы некоторые недостатки и недостатки? Также, если бы вы могли прокомментировать, какую JS Library / Framework вы использовали и ваш опыт работы с ней, это тоже было бы здорово.

Спасибо

Ответы [ 3 ]

4 голосов
/ 11 марта 2009

Это очень длинная тема, охватываемая множеством людей, но по своей сути разница в следующем:

Для веб-приложений с очень большой формой, которые поддерживают большое количество информации о состоянии ; часто остаются на одной странице и ведут себя аналогично настольному приложению, традиционная модель ASP.NET WebForms предоставляет множество возможностей для того, чтобы объединить все это для вас.

Для всего остального модель REST / MVC работает лучше всего.

Это обобщение, которое не применимо к каждой конкретной ситуации, но в целом это хорошее эмпирическое правило.

Также очень важно указать, что если у вас нет постоянной аудитории (например, корпоративной интрасети, а иногда даже тогда), вы должны написать свой сайт, WebForms или REST, чтобы работать без JS. Затем вернитесь и добавьте сладкое благо тем, кто может это поддержать.

1 голос
/ 11 марта 2009

Не исключаю гибридную модель. ASP.NET теперь поддерживает серверные элементы управления, которые изначально выводят JavaScript в браузер. Если у вас есть традиционные элементы управления, которые визуализируют разметку, и используете для публикации данных модель ASP.NET WebForms, подумайте о том, чтобы изменить элементы управления на ScriptControls, что позволяет обрабатывать загрузку данных и т. Д. В существующем коде, но напишите JavaScript для обработки пользовательского интерфейса. контроля полностью. Вы можете написать серверные элементы управления, которые выводят необходимый вам javascript (и устанавливать значения переменных и т. Д. С данными из вашего кода во время загрузки), и затем вместо выполнения обратных передач ваш javascript связывается с веб-службой с использованием AJAX. Обязательно изучите ajax.asp.net.

0 голосов
/ 11 марта 2009

Если браузер не поддерживает js, вы полностью заблокируете пользователя. Также вы, вероятно, столкнетесь с некоторыми поисковыми системами. Обратите внимание, что я говорю это, потому что вы думаете о том, чтобы набрать один URL в браузере, а затем использовать только js для остальных. То же самое касается наличия всего этого во вспышке и серебряном свете в этом отношении. Любая из этих работ хороша для личной информации или функций, которые не предназначены для поисковых систем, но для остальной информации вам действительно нужны разные URL.

Тем не менее, asp.net не так хорош в предотвращении проблем с js. Даже проблема с поиском страниц по умолчанию для сеток, как эта проблема - я получил сайт с полными записями в google до 2800+. http://asp.net/mvc лучше дает понять, с чем вы работаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...