ASP_NET_2_0_AJAX_Zaawansowane_programowanie_asajzp.pdf

(340 KB) Pobierz
ASP.NET 2.0 AJAX.
Zaawansowane
programowanie
Autor: Matt Gibbs, Dan Wahlin
T³umaczenie: Krzysztof B¹bol
ISBN: 978-83-246-1300-7
Tytu³ orygina³u:
Professional ASP.NET 2.0 AJAX
Format: B5, stron: 328
Œmia³o wkraczaj w nowoczesne technologie,
aby tworzyæ interaktywne aplikacje internetowe!
Jak zarz¹dzaæ odwo³aniami do strony?
Jak osadzaæ skrypty w kontrolkach serwerowych?
Jak u¿ywaæ narzêdzia Fiddler do kontroli komunikatów?
ASP.NET AJAX to nazwa stworzonego przez Microsoft rozwi¹zania AJAX. Odnosi siê
do zestawu technologii klienckich i serwerowych, które koncentruj¹ siê na ulepszaniu
programowania WWW pod Visual Studio. Jest to jedna z najpopularniejszych,
a równoczeœnie najbardziej docenianych – zarówno przez u¿ytkowników,
jak i programistów – technologii do tworzenia interaktywnych witryn internetowych.
ASP.NET AJAX dysponuje miêdzy innymi serwerowymi us³ugami aplikacyjnymi, takimi
jak uwierzytelnianie i przechowywanie profilu u¿ytkownika, oraz zawiera zestaw kontrolek
u³atwiaj¹cych asynchroniczn¹ aktualizacjê stron i korzystanie z zasobów serwera.
Ksi¹¿ka
„ASP.NET
2.0 AJAX. Zaawansowane programowanie” szczegó³owo ukazuje,
na czym polega tworzenie aplikacji WWW nowej generacji. Dziêki temu podrêcznikowi
bêdziesz wiedzia³, jak korzystaæ z ró¿nych bibliotek, jak u¿ywaæ zaawansowanych
kontrolek z pakietu AJAX Toolkit, a tak¿e jak budowaæ w³asne kontrolki. Nauczysz siê
asynchronicznie uaktualniaæ fragmenty stron i zarz¹dzaæ skryptami u¿ywanymi
w przegl¹darce, dowiesz siê, jak testowaæ takie aplikacje i usuwaæ z nich b³êdy.
Z t¹ ksi¹¿k¹ zdobêdziesz wiedzê potrzebn¹ do kreowania nowoczesnych,
interaktywnych aplikacji.
Czêœciowe aktualizacje stron
Pobieranie kodu JavaScript
Biblioteka kliencka ASP.NET AJAX
U¿ywanie prototypów
Elementy DOM
U¿ycie kontrolki ScriptManager
Dodawanie odwo³añ do skryptów
Zaawansowane kontrolki z pakietu AJAX Toolkit
Efekty interfejsu u¿ytkownika
Testowanie, debugowanie i wdra¿anie aplikacji ASP.NET AJAX
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Korzystaj z nowoczesnych technologii
podczas tworzenia interaktywnych aplikacji internetowych!
Spis treÊci
O autorach .................................................................................................................................................11
WstÂp ........................................................................................................................................................13
RozdziaÄ 1. Tworzenie nowej generacji aplikacji WWW .........................................................................17
Wzbogacanie aplikacji internetowych .............................................................................. 18
Kto skorzysta z technologii AJAX .................................................................................... 19
Dlaczego u ytkownicy chcñ aplikacji AJAX .................................................................. 19
Dlaczego programi ci chcñ stosowaè AJAX ................................................................ 20
Czym jest ASP.NET AJAX ............................................................................................... 22
Komponent ASP.NET ............................................................................................... 24
Komponent JavaScript ............................................................................................. 25
Komponent usäug sieci WWW ................................................................................... 28
Komponent dynamicznego HTML .............................................................................. 29
Inne biblioteki AJAX ...................................................................................................... 29
Zachowywanie równowagi miödzy programowaniem klienckim
a serwerowym dziöki ASP.NET AJAX ............................................................................. 31
Podsumowanie ............................................................................................................ 32
RozdziaÄ 2. CzÂÊciowe aktualizacje stron ............................................................................................. 33
Kontrolka UpdatePanel ................................................................................................. 33
Wyzwalanie aktualizacji ............................................................................................ 36
Wywoäywanie metody Update z serwera ..................................................................... 40
Cykl ycia czö ciowej aktualizacji strony .................................................................... 41
Przestrogi i obja nienia zawiäo ci zwiñzanych z UpdatePanel ....................................... 42
Kontrolka UpdateProgress ............................................................................................ 43
Automatyczne aktualizacje z kontrolkñ Timer .................................................................. 47
Zarzñdzanie odwoäaniami do strony ................................................................................ 49
Cykl wywoäania strony .............................................................................................. 50
Anulowanie wywoäania ............................................................................................. 53
Wykrywanie bäödów ................................................................................................. 54
Praca z aktualizacjami ............................................................................................. 55
AJAX a dostöpno è ....................................................................................................... 56
Podsumowanie ............................................................................................................ 57
6
ASP.NET 2.0 AJAX. Zaawansowane programowanie
RozdziaÄ 3. JavaScript dla programisty ASP.NET ................................................................................. 59
U ycie JavaScriptu po stronie klienta ............................................................................. 60
Pobieranie kodu JavaScript do przeglñdarki ............................................................... 60
Odczuwana wydajno è ............................................................................................. 61
Zasoby skryptu ....................................................................................................... 62
Typy zmiennych w JavaScripcie ...................................................................................... 63
Anomalie jözyka ........................................................................................................... 66
Co to jest równo è? ................................................................................................ 66
Null, undefined albo co innego ............................................................................... 69
Zakres zmiennych ........................................................................................................ 70
U ywanie prototypów .................................................................................................... 73
Wiöcej o domkniöciach ................................................................................................. 76
Od miecanie .......................................................................................................... 79
Elementy DOM ........................................................................................................ 80
Unikanie wycieków pamiöci ...................................................................................... 80
Ewaluacja eval ............................................................................................................. 81
Obsäuga wyjñtków ......................................................................................................... 82
Pobieranie fragmentów äaþcucha tekstowego .................................................................. 84
Lepszy JavaScript ......................................................................................................... 85
Redukcja skryptów .................................................................................................. 85
U ywanie zmiennych buforujñcych ............................................................................ 86
Podsumowanie ............................................................................................................ 87
RozdziaÄ 4. ZrozumieÀ bibliotek klienck¾ ASP.NET AJAX ..................................................................... 89
Cykl ycia strony w przeglñdarce .................................................................................... 90
U ywanie systemu typów ............................................................................................... 91
Deklarowanie przestrzeni nazw ................................................................................. 91
Tworzenie klas ........................................................................................................ 94
U ywanie interfejsów ............................................................................................... 99
Definiowanie wyliczeþ i flag .................................................................................... 101
Base Class Library ..................................................................................................... 105
Klasa String ......................................................................................................... 105
Daty i liczby .......................................................................................................... 106
Tablice ................................................................................................................. 108
Obsäuga Intellisense ................................................................................................... 110
Bäödy i debugowanie ................................................................................................... 113
Konsola ledzenia bäödów ..................................................................................... 113
Tworzenie bäödów .................................................................................................. 114
Parametry walidacyjne ........................................................................................... 115
Obiekt Browser .......................................................................................................... 117
Podsumowanie .......................................................................................................... 118
RozdziaÄ 5. UÑycie kontrolki ScriptManager .........................................................................................121
Wszechobecny ScriptManager ..................................................................................... 121
Dodawanie odwoäaþ do skryptów ............................................................................ 123
Ustawianie ScriptMode .......................................................................................... 125
Osadzanie zasobów skryptowych ............................................................................ 126
Lokalizacja skryptów .............................................................................................. 130
Globalizacja skryptów ............................................................................................ 132
Odwoäania do usäug ............................................................................................... 134
Spis treÊci
7
Usäugi aplikacyjne ASP.NET ......................................................................................... 137
Uwierzytelnianie przy u yciu formularzy .................................................................... 137
Usäuga profili ........................................................................................................ 140
Obsäuga bäödów ......................................................................................................... 144
Dopuszczalno è niestandardowych bäödów .............................................................. 144
Obsäuga bäödów w czasie asynchronicznego odesäania ............................................. 145
Limit czasowy w wywoäaniach asynchronicznych ....................................................... 146
Zmiana lokalizacji skryptów ......................................................................................... 146
Ustawianie cie ki do skryptu ................................................................................ 147
Rozwiñzywanie odwoäaþ do skryptów ....................................................................... 147
ScriptManagerProxy .............................................................................................. 148
Kompresja skryptów .............................................................................................. 148
Zgodno è .................................................................................................................. 148
Podsumowanie .......................................................................................................... 149
RozdziaÄ 6. Praca w sieci z ASP.NET AJAX .............................................................................................151
Obiekt XMLHttpRequest .............................................................................................. 151
Bezpieczeþstwo XMLHttpRequest ........................................................................... 152
Wäa ciwo ci i metody obiektu ................................................................................ 152
Wykonywanie wywoäaþ WebRequest ............................................................................. 154
Ustawianie metody HTTP ....................................................................................... 155
Ustalanie limitów czasu ......................................................................................... 157
Dodawanie niestandardowych nagäówków ............................................................... 158
Przesyäanie dodatkowych danych ............................................................................ 161
Rozwiñzywanie peänego adresu URL ........................................................................ 162
Zarzñdzanie ñdaniami WWW ...................................................................................... 162
Domy lny limit czasu ............................................................................................. 162
Globalna obsäuga ñdaþ WWW ............................................................................... 165
WebRequestExecutor ............................................................................................ 167
Przesyäanie danych ..................................................................................................... 168
Serializacja ........................................................................................................... 168
Format JSON ........................................................................................................ 169
Serializacja JSON .................................................................................................. 172
PageMethods ....................................................................................................... 176
Praca z datami ...................................................................................................... 178
Pomijanie serializacji ............................................................................................. 178
Konfiguracja serializera JSON ................................................................................. 179
Niestandardowa serializacja ................................................................................... 180
Podsumowanie .......................................................................................................... 180
RozdziaÄ 7. UsÄugi aplikacyjne w ASP.NET AJAX ...................................................................................183
Uwierzytelnianie u ytkowników ..................................................................................... 183
Konfiguracja uwierzytelniania na bazie formularzy .................................................... 184
Niestandardowe uwierzytelnianie ............................................................................ 185
Uwierzytelnianie w kodzie JavaScript ....................................................................... 187
Dostöp do statusu u ytkownika .............................................................................. 189
Wylogowanie ......................................................................................................... 190
Dane profilu u ytkownika ............................................................................................ 191
Definiowanie danych profilu ................................................................................... 192
Dostöp do wäa ciwo ci profilu ................................................................................ 194
Dostöp do danych profilu z przeglñdarki .................................................................. 195
8
ASP.NET 2.0 AJAX. Zaawansowane programowanie
Wstöpne äadowanie wäa ciwo ci profili .................................................................... 197
ãadowanie wäa ciwo ci profilu ................................................................................ 198
Zapisywanie danych profilu .................................................................................... 201
Podsumowanie .......................................................................................................... 204
RozdziaÄ 8. Zaawansowane kontrolki z pakietu AJAX Toolkit ............................................................205
Kontrolowanie ukäadu strony ....................................................................................... 206
Accordion ............................................................................................................. 206
AlwaysVisibleControlExtender ................................................................................. 209
CollapsiblePanelExtender ...................................................................................... 211
ResizableControlExtender ...................................................................................... 212
Zakäadki ............................................................................................................... 214
Efekty interfejsu u ytkownika ....................................................................................... 216
Animacje .............................................................................................................. 217
UpdatePanelAnimationExtender .............................................................................. 218
DropShadowExtender ............................................................................................ 219
RoundedCornersExtender ...................................................................................... 220
Kontrolki pojawiajñce siö na ekranie ............................................................................ 221
CalendarExtender .................................................................................................. 221
ConfirmButtonExtender .......................................................................................... 222
HoverMenuExtender .............................................................................................. 223
PopupControlExtender ........................................................................................... 224
ModalPopupExtender ............................................................................................. 224
CascadingDropDownExtender ................................................................................. 225
Podsumowanie .......................................................................................................... 227
RozdziaÄ 9. Testowanie i debugowanie aplikacji ASP.NET AJAX ..........................................................229
Skrypty produkcyjne i diagnostyczne ............................................................................ 229
U ywanie klasy Error ................................................................................................... 232
U ywanie klasy Sys.Debug .......................................................................................... 235
Wykonywanie operacji ledzenia ............................................................................. 236
Dokonywanie asercji .............................................................................................. 239
Wäñczanie debugowania w przeglñdarce Internet Explorer .............................................. 240
Debugowanie za pomocñ Internet Explorera i Visual Studio .NET 2005 ...................... 241
Debugowanie za pomocñ Internet Explorera i programu Microsoft Script Debugger .......... 245
Debugowanie za pomocñ Firefoksa i Firebug ................................................................. 246
Przeglñdanie komunikatów ñdaþ i odpowiedzi w ASP.NET AJAX ..................................... 249
U ywanie narzödzia Fiddler do kontroli komunikatów ................................................ 249
U ycie programu Web Development Helper do kontroli komunikatów ......................... 252
Podsumowanie .......................................................................................................... 254
RozdziaÄ 10. WdraÑanie aplikacji ASP.NET AJAX ..................................................................................255
Instalacja poszczególnych fragmentów ......................................................................... 255
ASP.NET AJAX ....................................................................................................... 256
ASP.NET AJAX Control Toolkit ................................................................................. 256
ASP.NET Futures CTP ............................................................................................ 257
Przygotowanie do wdro enia na farmie serwerów WWW ............................................... 258
Ustawianie MachineKey ......................................................................................... 258
Obsäuga stanu sesji .............................................................................................. 259
Zgłoś jeśli naruszono regulamin