Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #28, МАРТ 2003 г.

ASP.NET ИЛИ ВСЕ-ТАКИ ЕСТЬ? - Что ждать от M$?

Pony (pony@xakep.ru)

Спецвыпуск Xakep, номер #028, стр. 028-024-3


ФОРМЫ

Головная боль любого web-кодера - проверка данных, которые юзер пихает в форму. В целях безопасности такая проверка всегда мутится на стороне сервера. Исторически сложились две схемы:

1) ввод данных делается на первой странице, проверка на второй, и, если данные введены правильно, юзер попадает на третью страницу;

2) ввод и проверка данных делаются на одной странице, и, если введенные данные корректны, пользователь идет на следующую страницу.

Второй способ лучше: вся логика управления формой сидит в одном месте, в случае ошибки переданные данные не нужно восстанавливать. Именно этот способ юзают в ASP.NET.

В ASP.NET Micro$oft позаботилась о разработчике (ура!): в теге <form> появился новый атрибут runat со значением server. Так обозначаются серверные элементы управления. Теперь, например, проверка корректности введенного e-mail'а займет одну строку:

<asp:RegularExpressionValidator id="comp1" runat="server" ErrorMessage="Ты что, тупой?!!!" ControlToValidate="txtEmail" ValidationExpression="(\n|.)*\@(\n|.)*\.(\n|.)*"/>

В случае, если юзер введет какую-нибудь туфту, он получит мессагу: "Ты что, тупой?!!"

Есть еще элементы управления:

* RequiredFielValidator - для проверки, заполнены ли поля;

* RangeValidator - для проверки, располагается ли значение в пределах заданных границ;

* CompareValidator - для сравнения двух полей формы;

* CustomValidator - позволяет определить особый порядок и логику проверки. Например, можно сравнивать введенную информацию со значением из базы данных.

ВМЕСТО ЗАКЛЮЧЕНИЯ

Вот ты и познакомился с ASP.NET. Эта очень перспективная фича. Так как ее суппортит M$ со всеми вытекающими, у нее, наверняка, есть будущее. Она нацелена не на создание ламовских домашних паг о любимом попугае (дятле, ослике, нужное зачеркнуть), а на разработку мощных web-приложений (в том числе b2b). M$ попыталась создать продукт, способный задвинуть в плане производительности серьезные UNIX сервера, использующие J2EE. И, похоже, ей это удалось.

Станет ли тебе легче жить, если ты решил изучить ASP.NET? Конечно, нет! Но если ты решил стать крутым web-девелопером, то ASP.NET для тебя. И хаксорам дремать тоже не рекомендуется - дырок будет море - это же M$, мэн!

Назад на стр. 028-024-2  Содержание