Platforma .NET staje się coraz bardziej popularna. Powstaje coraz więcej aplikacji realizowanych właśnie pod jej kątem. Udostępniane przez platformę .NET mechanizmy pozwalają na szybkie tworzenie aplikacji, co przysparza jej wielu zwolenników. Do stworzenia aplikacji nie wystarczą jednak tylko mechanizmy, nawet najlepsze. Niezbędne jest wygodne i uniwersalne środowisko programowania, jakim niewątpliwie jest Delphi. Jego najnowsza wersja umożliwia pełne wykorzystanie potencjału platformy .NET.
'Delphi dla .NET. Vademecum profesjonalisty' to podręcznik przedstawiający możliwości tworzenia aplikacji .NET za pomocą narzędzia programistycznego firmy Borland. W książce zamieszczono praktyczne przykłady, omówienie ciekawych technik oraz przydatne wskazówki na temat efektywnego korzystania z potencjału platformy .NET Framework. Książka zawiera dokładne omówienie języka programowania Delphi, zaawansowanych zagadnień związanych z programowaniem dla platformy .NET (w tym z zarządzaniem pamięcią), mechanizmów COM-Interop i Reflection, biblioteki GDI+, wytwarzania komponentów typu Windows Forms oraz Web Forms i wiele innych. Znajdziesz tu także solidną analizę kluczowych technologii platformy .NET, takich jak ADO.NET i ASP.NET, włącznie z mnóstwem przykładów demonstrujących ich możliwości.
Podstawowe wiadomości o platformie .NET i rodzaje aplikacji .NET
Przegląd elementów platformy .NET
Delphi for .NET -- środowisko i język programowania
Biblioteka klas platformy .NET
Korzystanie z biblioteki GDI+
Środowisko Mono
Programowanie wielowątkowe
Usługi COM Interop i Platform Invocation Service
Programowanie aplikacji bazodanowych
Tworzenie stron WWW w technologii ASP.NET
Jeśli szukasz książki poświęconej technologii .NET i programowaniu w języku Delphi aplikacji zgodnych z tą technologią, trafiłeś najlepiej, jak tylko mogłeś.
O autorze:
Xavier Pacheco jest autorem bestsellerowych książek o środowisku Delphi, jest znanym na całym świecie programistą, autorem, konsultantem i wykładowcą.
[więcej...\
Znajdź podobne książki
Ostatnio czytane w tej kategorii
Darmowy fragment publikacji:
IDZ DO
IDZ DO
PRZYK£ADOWY ROZDZIA£
PRZYK£ADOWY ROZDZIA£
SPIS TREĎCI
SPIS TREĎCI
KATALOG KSI¥¯EK
KATALOG KSI¥¯EK
KATALOG ONLINE
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
TWÓJ KOSZYK
DODAJ DO KOSZYKA
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ZAMÓW INFORMACJE
O NOWOĎCIACH
O NOWOĎCIACH
ZAMÓW CENNIK
ZAMÓW CENNIK
CZYTELNIA
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Delphi dla .NET.
Vademecum profesjonalisty
Autor: Xavier Pacheco
T³umaczenie: Rafa³ Joñca, Szymon
Kobalczyk, Miko³aj Szczepaniak
ISBN: 83-7361-631-4
Tytu³ orygina³u: Delphi for .net Developers Guide
Format: B5, stron: 944
Platforma .NET staje siê coraz bardziej popularna. Powstaje coraz wiêcej aplikacji
realizowanych w³aġnie pod jej k¹tem. Udostêpniane przez platformê .NET mechanizmy
pozwalaj¹ na szybkie tworzenie aplikacji, co przysparza jej wielu zwolenników. Do
stworzenia aplikacji nie wystarcz¹ jednak tylko mechanizmy, nawet najlepsze. Niezbêdne
jest wygodne i uniwersalne ġrodowisko programowania, jakim niew¹tpliwie jest Delphi.
Jego najnowsza wersja umo¿liwia pe³ne wykorzystanie potencja³u platformy .NET.
„Delphi dla .NET. Vademecum profesjonalisty” to podrêcznik przedstawiaj¹cy mo¿liwoġci
tworzenia aplikacji .NET za pomoc¹ narzêdzia programistycznego firmy Borland.
W ksi¹¿ce zamieszczono praktyczne przyk³ady, omówienie ciekawych technik oraz
przydatne wskazówki na temat efektywnego korzystania z potencja³u platformy .NET
Framework. Ksi¹¿ka zawiera dok³adne omówienie jêzyka programowania Delphi,
zaawansowanych zagadnieñ zwi¹zanych z programowaniem dla platformy .NET
(w tym z zarz¹dzaniem pamiêci¹), mechanizmów COM-Interop i Reflection, biblioteki
GDI+, wytwarzania komponentów typu Windows Forms oraz Web Forms i wiele innych.
Znajdziesz tu tak¿e solidn¹ analizê kluczowych technologii platformy .NET, takich jak
ADO.NET i ASP.NET, w³¹cznie z mnóstwem przyk³adów demonstruj¹cych ich mo¿liwoġci.
• Podstawowe wiadomoġci o platformie .NET i rodzaje aplikacji .NET
• Przegl¹d elementów platformy .NET
• Delphi for .NET — ġrodowisko i jêzyk programowania
• Biblioteka klas platformy .NET
• Korzystanie z biblioteki GDI+
• Ďrodowisko Mono
• Programowanie wielow¹tkowe
• Us³ugi COM Interop i Platform Invocation Service
• Programowanie aplikacji bazodanowych
• Tworzenie stron WWW w technologii ASP.NET
Jeġli szukasz ksi¹¿ki poġwiêconej technologii .NET i programowaniu w jêzyku Delphi
aplikacji zgodnych z t¹ technologi¹, trafi³eġ najlepiej, jak tylko mog³eġ.
5RKUVTGħEK
1#WVQTG
9RTQYCFGPKG
úħè+
2QFUVCY[VGEJPQNQIKK0 6
4QFKCđ 9RTQYCFGPKGFQVGEJPQNQIKK0 6
Koncepcja .NET.....................................................................................................................28
Wizja .NET......................................................................................................................28
Składniki platformy .NET Framework
— środowisko Common Language Runtime (CLR) i biblioteki Class Libraries........31
Rodzaje aplikacji .NET...................................................................................................32
Czym jest biblioteka VCL for .NET? .............................................................................33
Rozproszone wytwarzanie oprogramowania za pośrednictwem usług Web Services..........34
Definicja usług Web Services.........................................................................................35
Klienty usług Web Services............................................................................................37
Narzędzia programowania usług Web Services..............................................................38
4QFKCđ 2TGINæFRNCVHQTO[0 6(TCOGYQTM
Od tworzenia do uruchamiania .............................................................................................39
Środowisko Common Language Runtime (CLR) .................................................................40
Moduły zarządzane..........................................................................................................40
Podzespoły.......................................................................................................................41
Kod zarządzany i niezarządzany.....................................................................................42
Kompilowanie i uruchamianie kodu MSIL i JIT ............................................................42
System Common Type System (CTS) ..................................................................................45
Typy wartościowe............................................................................................................45
Typy referencyjne............................................................................................................46
Specyfikacja Common Language Specification (CLS).........................................................46
Platforma .NET Framework i biblioteka Base Class Library (BCL)....................................47
Przestrzenie nazw ............................................................................................................47
Przestrzeń nazw System..................................................................................................47
Główne podprzestrzenie przestrzeni nazw System .........................................................47
úħè++
,ú[MRTQITCOQYCPKC GNRJKHQT0 6
4QFKCđ 9RTQYCFGPKGFQLú[MC GNRJKHQT0 6KPQYGIQħTQFQYKUMC+
Omówienie Delphi for .NET.................................................................................................55
Wprowadzenie do zintegrowanego środowiska programowania (IDE) ...............................56
Strona powitalna ..............................................................................................................57
Obszar projektowania .....................................................................................................57
Formularze.......................................................................................................................60
6
Delphi dla .NET. Vademecum profesjonalisty
Paleta narzędzi i fragmenty kodu....................................................................................61
Inspektor obiektów ..........................................................................................................62
Edytor kodu .....................................................................................................................63
Menedżer projektu ...........................................................................................................65
Widok modelu .................................................................................................................66
Eksplorator danych ..........................................................................................................67
Repozytorium obiektów..................................................................................................67
Eksplorator kodu..............................................................................................................68
Lista zadań do wykonania...............................................................................................68
4QFKCđ 2TQITCO[OQFWđ[KRTGUVTGPKGPCY
Struktury oparte na modułach zarządzanych.........................................................................71
Przestrzenie nazw ............................................................................................................71
Struktura modułu .............................................................................................................73
Składnia klauzuli uses.....................................................................................................75
Cykliczne odwołania do modułów..................................................................................76
Przestrzenie nazw...................................................................................................................77
Deklaracja przestrzeni nazw ...........................................................................................77
Stosowanie przestrzeni nazw ..........................................................................................79
Klauzula namespaces......................................................................................................79
Identyfikowanie ogólnych przestrzeni nazw...................................................................79
Aliasy modułów...............................................................................................................80
4QFKCđ
,ú[M GNRJK
Wszystko o technologii .NET ...............................................................................................81
Komentarze............................................................................................................................82
Procedury i funkcje ................................................................................................................82
Nawiasy w wywołaniach ................................................................................................83
Przeciążanie .....................................................................................................................83
Domyślne wartości parametrów......................................................................................83
Zmienne .................................................................................................................................85
Stałe .......................................................................................................................................86
Operatory ...............................................................................................................................88
Operatory przypisania.....................................................................................................88
Operatory porównania ....................................................................................................89
Operatory logiczne...........................................................................................................89
Operatory arytmetyczne..................................................................................................90
Operatory bitowe .............................................................................................................91
Procedury zwiększania i zmniejszania............................................................................92
Operatory typu „zrób i przypisz” ....................................................................................92
Typy języka Delphi................................................................................................................93
Obiekty, wszędzie tylko obiekty!....................................................................................93
Zestawienie typów ...........................................................................................................94
Znaki................................................................................................................................95
Typy wariantowe .............................................................................................................95
Typy definiowane przez użytkownika ..................................................................................99
Tablice ...........................................................................................................................100
Tablice dynamiczne ......................................................................................................101
Rekordy .........................................................................................................................103
Zbiory ............................................................................................................................104
„Niebezpieczny” kod ....................................................................................................106
Wskaźniki ......................................................................................................................107
Klasy i obiekty...............................................................................................................110
Aliasy typów..................................................................................................................111
Rzutowanie i konwersja typów ...........................................................................................112
Zasoby łańcuchowe..............................................................................................................113
Spis treści
7
Testowanie warunków .........................................................................................................113
Instrukcja if....................................................................................................................114
Stosowanie instrukcji case ............................................................................................114
Pętle .....................................................................................................................................115
Pętla for .........................................................................................................................115
Pętla while .....................................................................................................................116
Pętla repeat-until............................................................................................................117
Instrukcja Break.............................................................................................................117
Instrukcja Continue........................................................................................................117
Procedury i funkcje ..............................................................................................................118
Przekazywanie parametrów ..........................................................................................119
Zakres ..................................................................................................................................122
Moduły i przestrzenie nazw ................................................................................................123
Klauzula uses.................................................................................................................124
Cykliczne odwołania do modułów................................................................................125
Pakiety i podzespoły ............................................................................................................125
Programowanie obiektowe..................................................................................................126
Stosowanie obiektów Delphi...............................................................................................127
Deklaracja i tworzenie egzemplarza .............................................................................128
Destrukcja......................................................................................................................129
Przodek wszystkich obiektów.......................................................................................129
Pola................................................................................................................................129
Metody...........................................................................................................................130
Typy metod....................................................................................................................131
Referencje do klas..........................................................................................................134
Właściwości...................................................................................................................135
Zdarzenia .......................................................................................................................136
Specyfikatory widoczności ...........................................................................................138
Klasy zaprzyjaźnione....................................................................................................140
Klasy pomocnicze..........................................................................................................140
Typy zagnieżdżone ........................................................................................................141
Przeciążanie operatorów ...............................................................................................142
Atrybuty.........................................................................................................................142
Interfejsy........................................................................................................................143
Ujednolicony mechanizm obsługi wyjątków ......................................................................147
Klasy wyjątków .............................................................................................................150
Przepływ sterowania działaniem...................................................................................151
Ponowne generowanie wyjątków..................................................................................153
úħè+++ 2TCECDKDNKQVGMæMNCURNCVHQTO[0 6(TCOGYQTM
4QFKCđ 2QFGURQđ[0 6DKDNKQVGMKKRCMKGV[
Podstawowe podzespoły .....................................................................................................157
Przeglądanie zawartości podzespołów i występujących między nimi zależności ..............158
Mechanizm GAC .................................................................................................................159
Konstruowanie podzespołów ..............................................................................................160
Dlaczego stosujemy podzespoły .NET?........................................................................161
Stosowanie pakietów do budowy podzespołów............................................................161
Stosowanie bibliotek do budowania podzespołów........................................................166
Stosowanie podzespołów w języku Delphi .........................................................................170
Stosowanie podzespołów z języka Delphi w programach C# ............................................171
Instalacja pakietów w środowisku Delphi...........................................................................171
Podzespoły ze ścisłą kontrolą nazw ....................................................................................172
Dynamicznie wczytywane podzespoły ...............................................................................173
8
Delphi dla .NET. Vademecum profesjonalisty
4QFKCđ 2TQITCOQYCPKGRT[Wľ[EKW) +
4[UQYCPKGY0 6
Pojęcia podstawowe.............................................................................................................175
Przestrzenie nazw GDI+ ...............................................................................................175
Klasa Graphics...............................................................................................................176
Układ współrzędnych w systemie Windows.................................................................176
Rysowanie prostych .............................................................................................................178
Klasy Pen i Brush ..........................................................................................................178
Rysowanie prostych......................................................................................................179
Końcówki linii ...............................................................................................................181
Łączenie linii — klasa GraphicsPath ............................................................................183
Rysowanie krzywych ...........................................................................................................185
Krzywa sklejana typu cardinal......................................................................................185
Krzywa sklejana Beziera...............................................................................................185
Rysowanie figur ...................................................................................................................189
Rysowanie prostokątów................................................................................................189
Rysowanie elips.............................................................................................................190
Rysowanie wielokątów .................................................................................................191
Rysowanie wycinków elips...........................................................................................191
Więcej o „pędzlu” LinearGradientBrush ......................................................................193
Klasy GraphicsPath i Region ..............................................................................................193
Rysowanie za pomocą klasy GraphicsPath...................................................................194
Rysowanie za pomocą klasy Region.............................................................................195
Obszary przycinające....................................................................................................197
Praca z obrazami ..................................................................................................................199
Klasy Image...................................................................................................................200
Wczytywanie i tworzenie bitmap..................................................................................200
Zmiana rozdzielczości obrazu.......................................................................................201
Rysowanie obrazów......................................................................................................202
Interpolacja ....................................................................................................................203
Rysowanie efektu zwierciadła (lustra) ..........................................................................204
Stosowanie metod przekształcania obrazów .................................................................206
Tworzenie miniatur........................................................................................................210
Przegląd układów współrzędnych.......................................................................................211
Przykład animacji.................................................................................................................213
4QFKCđ /QPQ9KGNQRNCVHQTOQYGħTQFQYKUMQ0 6
Cechy środowiska Mono.....................................................................................................221
Historia Mono......................................................................................................................222
Po co stworzono Mono?......................................................................................................223
Mapa drogowa Mono...........................................................................................................224
Cele Mono 1.0 ...............................................................................................................224
Cele Mono 1.2 ...............................................................................................................225
Cele Mono 1.4 ...............................................................................................................225
Instalacja i ustawienia ..........................................................................................................226
Instalacja środowiska uruchomieniowego Mono — program Red Carpet...................226
Tworzenie naszego pierwszego programu Mono................................................................229
Uruchamianie w środowisku Mono (w systemie Linux)
podzespołów wygenerowanych w Delphi........................................................................230
Wieloplatformowa technologia ASP.NET ..........................................................................234
Wdrażanie rozwiązań ASP.NET w środowisku Mono ................................................236
Konfiguracja XSP..........................................................................................................236
Parametry środowiska uruchomieniowego XSP ...........................................................236
Kilka uwag i możliwych kierunków rozwoju rozszerzeń zaprezentowanego przykładu...238
Mono i technologia ADO.NET ...........................................................................................239
Mono i serwer Apache .........................................................................................................243
Mono i przestrzeń nazw System.Windows.Forms ..............................................................245
Spis treści
9
4QFKCđ
CTæFCPKGRCOKúEKæKQFħOKGECPKG
Sposób działania mechanizmu odzyskiwania pamięci ........................................................247
Pokoleniowy algorytm odzyskiwania pamięci..............................................................249
Wywoływanie mechanizmu odzyskiwania pamięci......................................................252
Konstruktory ........................................................................................................................252
Finalizacja............................................................................................................................253
Metoda bezpośredniego zwalniania zasobów — interfejs IDisposable..............................255
Przykład implementacji interfejsu IDisposable.............................................................255
Automatyczne implementowanie interfejsu IDisposable.............................................257
Problemy z wydajnością w aspekcie finalizacji ..................................................................258
4QFKCđ -QNGMELG
Interfejsy przestrzeni nazw System.Collections..................................................................261
Interfejs IEnumerable ...................................................................................................262
Interfejs ICollection ......................................................................................................263
Interfejs IList .................................................................................................................263
Interfejs IDictionary......................................................................................................263
Interfejs IEnumeration ..................................................................................................264
Klasy przestrzeni nazw System.Collections........................................................................264
Kolekcja typu Stack......................................................................................................265
Klasa Queue...................................................................................................................268
Klasa ArrayList..............................................................................................................271
Klasa HashTable............................................................................................................275
Tworzenie kolekcji ze ścisłą kontrolą typów ......................................................................278
Dziedziczenie po klasie bazowej CollectionBase .........................................................278
Stosowanie kolekcji ze ścisłą kontrolą typów...............................................................282
Tworzenie słowników ze ścisłą kontrolą typów..................................................................283
Dziedziczenie po klasie bazowej DictionaryBase.........................................................283
Stosowanie kolekcji ze ścisłą kontrolą typów...............................................................286
4QFKCđ 2TCECMNCUCOK5VTKPIK5VTKPI$WKNFGT
Typ System.String................................................................................................................287
Niezmienność łańcuchów w środowisku .NET.............................................................288
Operacje na łańcuchach ................................................................................................290
Porównywanie łańcuchów ............................................................................................291
Klasa StringBuilder..............................................................................................................295
Metody klasy StringBuilder..........................................................................................296
Stosowanie obiektów klasy StringBuilder ....................................................................296
Formatowanie łańcuchów ...................................................................................................297
Specyfikatory formatu..........................................................................................................298
Specyfikatory formatów liczbowych ............................................................................299
Specyfikatory formatów daty i czasu............................................................................301
Specyfikatory formatów typów wyliczeniowych..........................................................304
4QFKCđ 1RGTCELGPCRNKMCEJKUVTWOKGPKCEJ
Klasy przestrzeni nazw System.IO......................................................................................307
Praca z systemem katalogów ..............................................................................................309
Tworzenie i usuwanie katalogów..................................................................................309
Przenoszenie i kopiowanie katalogów ..........................................................................310
Analizowanie informacji o katalogach..........................................................................313
Praca z plikami.....................................................................................................................314
Tworzenie i usuwanie plików .......................................................................................314
Przenoszenie i kopiowanie plików................................................................................315
Analizowanie informacji o plikach ...............................................................................315
10
Delphi dla .NET. Vademecum profesjonalisty
Strumienie............................................................................................................................315
Praca ze strumieniami plików tekstowych ....................................................................316
Praca ze strumieniami plików binarnych ......................................................................319
Asynchroniczny dostęp do strumieni ..................................................................................321
Monitorowanie aktywności katalogów ...............................................................................324
Serializacja...........................................................................................................................326
Sposób działania serializacji .........................................................................................327
Formatery.......................................................................................................................328
Przykład serializacji i deserializacji..............................................................................328
4QFKCđ 6YQTGPKGYđCUP[EJMQPVTQNGM9KP(QTOU
Podstawy budowy komponentów........................................................................................334
Kiedy należy tworzyć własne komponenty?.................................................................334
Etapy pisania komponentu............................................................................................335
Wybór klasy bazowej....................................................................................................335
Tworzenie modułów komponentów..............................................................................336
Tworzenie właściwości.................................................................................................339
Tworzenie zdarzeń.........................................................................................................350
Tworzenie metod ...........................................................................................................356
Konstruktory i destruktory............................................................................................356
Zachowanie w fazie projektowania...............................................................................358
Testowanie komponentu ...............................................................................................359
Dołączanie ikony komponentu .....................................................................................359
Przykładowe komponenty...................................................................................................360
ExplorerViewer — przykład komponentu dziedziczącego po klasie UserControl ......360
SimpleStatusBars — przykład użycia dostawców rozszerzeń .....................................368
Tworzenie komponentów użytkownika — kontrolka PlayingCard....................................373
4QFKCđ 2TQITCOQYCPKGYKGNQYæVMQYGY GNRJK0 6
Procesy.................................................................................................................................381
Wątki....................................................................................................................................382
Wątki w stylu .NET .............................................................................................................383
Domeny aplikacji .................................................................................................................384
Przestrzeń nazw System.Threading.....................................................................................385
Klasa System.Threading.Thread ...................................................................................385
Typ wyliczeniowy System.Threading.ThreadPriority .................................................389
Typ wyliczeniowy System.Threading.ThreadState.......................................................390
Typ wyliczeniowy System.Threading.ApartmentState................................................391
Klasa System.Threading.ThreadPool............................................................................391
Klasa System.Threading.Timer.....................................................................................393
Delegacje .......................................................................................................................394
Tworzenie bezpiecznego kodu wielowątkowego w stylu .NET.........................................396
Mechanizmy blokujące .................................................................................................396
Zdarzenia .......................................................................................................................401
Lokalna pamięć wątków ...............................................................................................402
Komunikacja międzyprocesowa Win32 .......................................................................403
Bezpieczne wielowątkowe klasy i metody środowiska .NET......................................403
Kwestie dotyczące interfejsu użytkownika .........................................................................404
Metoda System.Windows.Forms.Control.Invoke() ......................................................405
Właściwość System.Windows.Forms.Control.InvokeRequired...................................405
Metoda System.Windows.Forms.Control.BeginInvoke() ............................................406
Metoda System.Windows.Forms.Control.EndInvoke() ...............................................406
Metoda System.Windows.Forms.Control.CreateCraphics() ........................................407
Spis treści
11
Wyjątki w programach wielowątkowych............................................................................409
System.Threading.ThreadAbortException....................................................................409
System.Threading.ThreadInterruptedException ...........................................................412
System.Threading.ThreadStateException .....................................................................412
System.Threading.SynchronizationLockException ......................................................412
Odzyskiwanie pamięci a wielowątkowość..........................................................................412
4QFKCđ /GEJCPKOQFYKGTEKGFNCPKC
Odzwierciedlanie podzespołów...........................................................................................413
Odzwierciedlanie modułów ................................................................................................416
Odzwierciedlanie typów......................................................................................................417
Dostęp do składowych typu podczas wykonywania (późne wiązanie) ..............................419
Wydajny dostęp do składowych przez wywoływanie typów składowych ...................423
Kolejny przykład wywoływania składowych ...............................................................423
Emitowanie kodu MSIL przy użyciu odzwierciedlania ......................................................427
Narzędzia — klasy do emitowania MSIL.....................................................................427
Proces emitowania .........................................................................................................428
Przykład użycia przestrzeni nazw System.Reflection.Emit .........................................428
4QFKCđ 9URÎđRTCECKUVPKGLæE[OMQFGO
7UđWIK 1/+PVGTQRK2NCVHQTO+PXQECVKQP5GTXKEG
Do czego służą mechanizmy współpracy z istniejącym kodem? .......................................433
Powszechne problemy przy współpracy .............................................................................434
Użycie obiektów COM w kodzie .NET ..............................................................................435
Automatyzacja z późnym dowiązywaniem...................................................................435
Parametry typów prostych, referencyjne i opcjonalne .................................................438
Wcześnie dowiązywane obiekty COM .........................................................................439
Podzespoły pośredniczące ............................................................................................442
Tworzenie podzespołu pośredniczącego.......................................................................443
Zawartość pośredniczącej biblioteki typów ..................................................................444
Użycie zdarzeń COM....................................................................................................445
Sterowanie długością życia obiektów COM .................................................................447
Obsługa błędów .............................................................................................................447
Podstawowe podzespoły pośredniczące........................................................................448
Dostosowywanie zwykłych i podstawowych podzespołów pośredniczących..............449
Użycie obiektów .NET w kodzie COM ..............................................................................451
Rejestrowanie podzespołu .NET dla automatyzacji......................................................451
Automatyzacja z późnym dowiązywaniem...................................................................452
Pośredniczące biblioteki typów ....................................................................................453
Co zawiera pośrednicząca biblioteka typów? ...............................................................454
Implementowanie interfejsów.......................................................................................455
Typy i szeregowanie parametrów .................................................................................457
Obsługa błędów .............................................................................................................459
Użycie procedur bibliotek Win32 w kodzie .NET ..............................................................460
Tradycyjna składnia Delphi ..........................................................................................461
Składnia wykorzystująca atrybuty ................................................................................462
Typy i szeregowanie parametrów .................................................................................464
Obsługa błędów .............................................................................................................466
Kody błędów Win32.....................................................................................................467
Kody błędów HResult...................................................................................................469
Kwestie związane z wydajnością..................................................................................471
Użycie procedur .NET w kodzie Win32 .............................................................................475
Tradycyjna składnia Delphi ..........................................................................................476
Typy i szeregowanie parametrów .................................................................................477
12
Delphi dla .NET. Vademecum profesjonalisty
úħè+8 2TQITCOQYCPKGCRNKMCELKDCQFCPQY[EJ
Y[MQT[UVCPKGOVGEJPQNQIKK# 10 6
4QFKCđ 2TGINæF# 10 6
Założenia projektowe...........................................................................................................483
Architektura danych odłączonych od źródła danych.....................................................483
Integracja z XML-em....................................................................................................484
Jednolita reprezentacja danych .....................................................................................484
Oparcie na platformie .NET Framework.......................................................................484
Wykorzystanie wcześniejszych technologii..................................................................484
Obiekty ADO.NET ..............................................................................................................485
Klasy dostępu bezpośredniego......................................................................................486
Klasy dostępu rozłączalnego.........................................................................................487
Dostawcy danych w .NET...................................................................................................487
4QFKCđ 7ľ[EKGQDKGMVW QPPGEVKQP
Funkcje obiektu Connection ...............................................................................................489
Konfiguracja właściwości ConnectionString ......................................................................490
Ustawienia SqIConnection.ConnectionString...............................................................490
Ustawienia OleDbConnection.ConnectionString..........................................................491
Ustawienia OdbcConnection.ConnectionString............................................................491
Ustawienia OracleConnection.ConnectionString..........................................................491
Otwieranie i zamykanie połączeń .......................................................................................492
Zdarzenia obiektu Connection ............................................................................................492
Buforowanie połączeń..........................................................................................................495
4QFKCđ 7ľ[EKGQDKGMVÎY QOOCPFK CVC4GCFGT
Wykonywanie poleceń.........................................................................................................497
Interfejs IDbCommand .................................................................................................497
Polecenia niezwracające wyników......................................................................................498
Pobieranie pojedynczych wartości ......................................................................................500
Wykonywanie poleceń języka DDL....................................................................................501
Podawanie parametrów przy użyciu klasy IDbParameter ..................................................503
Wykonywanie procedur składowanych...............................................................................504
Odczytywanie parametrów..................................................................................................506
Pobieranie zbiorów wynikowych przy użyciu obiektu DataReader ...................................508
Interfejs IDataReader....................................................................................................508
Pobranie zbioru wynikowego..............................................................................................508
Pobranie wielu zbiorów wynikowych przy użyciu obiektu DataReader ............................509
Użycie obiektu DataReader do pobierania danych typu BLOB .........................................510
Użycie obiektu DataReader do pobierania informacji na temat schematu .........................512
4QFKCđ -NCU[ CVC#FCRVGTK CVC5GV
Klasa DataAdapter ...............................................................................................................515
Struktura klasy DataAdapter.........................................................................................515
Tworzenie obiektu DataAdapter ...................................................................................517
Pobieranie wyników zapytania .....................................................................................518
Odwzorowywanie wyników zapytania .........................................................................520
Praca z obiektami DataSet ..................................................................................................523
Struktura klasy DataSet ................................................................................................523
Operacje klasy DataSet.................................................................................................525
Praca z obiektami DataTable ..............................................................................................526
Definiowanie kolumn ...................................................................................................526
Definiowanie kluczy głównych ....................................................................................528
Spis treści
13
Praca z ograniczeniami .................................................................................................528
Praca z obiektami DataRelation....................................................................................531
Manipulowanie danymi — praca z obiektem DataRow...............................................534
Wyszukiwanie, sortowanie i filtrowanie danych ..........................................................536
4QFKCđ -QT[UVCPKGHQTOWNCT[9KP(QTOU
ōQDKGMV[ CVC8KGYKFQYKæ[YCPKGFCP[EJ
Wyświetlanie danych za pomocą DataView i DataViewManager .....................................539
Klasa DataView .............................................................................................................540
Klasa DataViewManager ..............................................................................................541
Przykładowe projekty wykorzystujące klasy DataView i DataViewManager .............541
Dowiązywanie danych .........................................................................................................552
Interfejsy dowiązywania danych...................................................................................552
Dowiązanie proste i złożone .........................................................................................553
Klasy dowiązań danych z formularza WinForm...........................................................553
Tworzenie formularzy Windows z dowiązaniami danych ...........................................554
4QFKCđ CRKUFCP[EJFQļTÎFđCFCP[EJ
Aktualizacja źródła danych za pomocą klasy SQLCommandBuilder................................565
Aktualizacja źródła danych za pomocą własnej logiki aktualizacji....................................568
Korzystanie z klasy Command .....................................................................................568
Korzystanie z klasy SqlDataAdapter ............................................................................575
Aktualizacja za pomocą zapamiętanych procedur ........................................................580
Obsługa współbieżności ...............................................................................................586
Odświeżanie danych po ich aktualizacji .......................................................................590
4QFKCđ 6TCPUCMELGKQDKGMV[ CVC5GVGħEKUđæMQPVTQNæV[RÎY
Przetwarzanie transakcyjne.................................................................................................593
Przykład prostego przetwarzania transakcyjnego .........................................................594
Transakcje wykorzystujące obiekt DataAdapter...........................................................597
Poziomy izolacji ............................................................................................................597
Znaczniki zapisu ............................................................................................................599
Zagnieżdżone transakcje...............................................................................................599
Obiekty DataSet ze ścisłą kontrolą typów...........................................................................600
Wady i zalety .................................................................................................................600
Tworzenie obiektów DataSet ze ścisłą kontrolą typów................................................601
Analiza pliku .pas dla obiektu DataSet ze ścisłą kontrolą typów .................................602
Korzystanie z obiektów DataSet ze ścisłą kontrolą typów...........................................609
4QFKCđ -NCU[FQUVCYE[FCP[EJ
$QTNCPF CVC2TQXKFGT
Przegląd architektury ...........................................................................................................611
Klasy Borland Data Provider ..............................................................................................612
Klasa BdpConnection ...................................................................................................613
Klasa BdpCommand.....................................................................................................614
Klasa BdpDataReader...................................................................................................615
Klasa BdpDataAdapter .................................................................................................616
Klasy BdpParameter i BdpParameterCollection ...........................................................617
Klasa BdpTransaction...................................................................................................618
Elementy projektowe w środowisku programistycznym.....................................................619
Edytor połączeń .............................................................................................................619
Edytor tekstów poleceń.................................................................................................620
Edytor kolekcji parametrów..........................................................................................620
Okno dialogowe konfiguracji łącznika danych.............................................................620
14
Delphi dla .NET. Vademecum profesjonalisty
úħè8
6YQTGPKGCRNKMCELKKPVGTPGVQY[EJY#520 6
4QFKCđ 2QFUVCY[#520 6
Technologie internetowe — jak one działają? ....................................................................625
Omówienie protokołu HTTP ........................................................................................625
Pakiet żadania protokołu HTTP....................................................................................626
Pakiet odpowiedzi protokołu HTTP .............................................................................627
ASP.NET — jak działa? .....................................................................................................628
Prosta aplikacja internetowa .........................................................................................629
Struktura strony ASP.NET............................................................................................630
Komunikacja sterowana zdarzeniami ...........................................................................632
VIEWSTATE i utrzymywanie stanu ............................................................................633
Kod poza sceną (CodeBehind)......................................................................................634
Klasy ASP.NET ...................................................................................................................635
Klasa HTTPResponse...................................................................................................635
Klasa HTTPRequest .....................................................................................................638
Klasa HTTPCookie........................................................................................................640
Obsługa wielokrotnego wysyłania danych....................................................................641
4QFKCđ 6YQTGPKGUVTQP999Y#520 6
Tworzenie stron WWW za pomocą kontrolek ASP.NET ..................................................643
Przykładowy formularz prośby o pobranie produktu....................................................644
Układ graficzny strony..................................................................................................645
Tworzenie formularza...................................................................................................645
Przetworzenie zdarzenia załadowania...........................................................................646
Zapis plików w aplikacjach ASP.NET..........................................................................647
Kolejność przetwarzania zdarzeń w formularzach WWW...........................................649
Wcześniejsze wypełnianie kontrolek list ............................................................................649
Przeprowadzanie walidacji formularzy ...............................................................................650
Walidacja po stronie klienta a walidacja po stronie serwera........................................651
Klasa BaseValidator .....................................................................................................651
Kontrolka RequiredFieldValidator ...............................................................................652
Kontrolka CompareValidator........................................................................................653
Kontrolka RegularExpressionValidator........................................................................654
Kontrolka RangeValidator............................................................................................656
Kontrolka CustomValidator..........................................................................................656
Kontrolka ValidationSummary .....................................................................................657
Formatowanie stron .............................................................................................................658
Właściwości WebControl z typami ścisłymi ................................................................658
Kaskadowe arkusze stylów ...........................................................................................659
Wykorzystanie klasy stylu ............................................................................................660
Przemieszczanie się między formularzami Web Forms ......................................................661
Przekazywanie danych dzięki mechanizmowi POST ..................................................662
Zastosowanie metody Response.Redirect() i tekstu zapytania.....................................662
Wykorzystanie metody Server.Transfer() .....................................................................663
Wykorzystanie zmiennych sesji....................................................................................664
Wskazówki i ciekawe sztuczki............................................................................................665
Użycie kontrolki Panel do symulacji wielu formularzy ...............................................665
Wysyłanie pliku przez klienta.......................................................................................667
Wysłanie listu e-mail z poziomu formularza ................................................................669
Wyświetlanie obrazów..................................................................................................670
Dynamiczne dodawanie kontrolek................................................................................671
Spis treści
15
4QFKCđ 6YQTGPKGCRNKMCELKDCQFCPQY[EJY#520 6
Dowiązywanie danych .........................................................................................................675
Proste dowiązywanie danych........................................................................................675
Złożone dowiązywanie danych.....................................................................................680
Dowiązywanie danych do kontrolek list .............................................................................680
Kontrolka CheckBoxList ..............................................................................................680
Kontrolka DropDownList .............................................................................................682
Kontrolka ListBox .........................................................................................................685
Kontrolka RadioButtonList...........................................................................................687
Dowiązywanie danych do kontrolek iteracyjnych...............................................................689
Kontrolka Repeater........................................................................................................689
Kontrolka DataList ........................................................................................................693
Korzystanie z elementu DataGrid .......................................................................................698
Stronicowanie kontrolki DataGrid ................................................................................700
Edycja za pomocą kontrolki DataGrid..........................................................................703
Dodanie elementów do kontrolki DataGrid ..................................................................709
Sortowanie kontrolki DataGrid.....................................................................................709
Formularz prośby o pobranie pliku oparty na bazie danych i administracja systemem ....... 710
4QFKCđ 7UđWIKUKGEKQYG
Terminy związane z usługami sieciowymi..........................................................................715
Konstrukcja usług sieciowych.............................................................................................716
Atrybut [WebService]...................................................................................................721
Zwracanie danych z usługi sieciowej............................................................................722
Atrybut [WebMethod] ..................................................................................................723
Wykorzystywanie usług sieciowych ...................................................................................725
Odkrywanie usługi.........................................................................................................725
Tworzenie klasy pośredniczącej ...................................................................................725
Korzystanie z klasy pośredniczącej ..............................................................................727
Pobranie obiektu DataSet z usługi sieciowej
Pobierz darmowy fragment (pdf)
Gdzie kupić całą publikację:
Opinie na temat publikacji:
Inne popularne pozycje z tej kategorii:
Czytaj również:
Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką :