1 La plate-forme.net...23 1.1 Structure de la plate-forme.net...26 1.2 Common Language Runtime : le lien avec votre système d exploitation...28 1.3 Comment est structurée l application : l étude du modèle d exécution...29 Assemblages...29 Métadonnées...31 Applications...31 1.4 Applications générées : les interfaces utilisateur... 31 Applications WinForm...31 Applications ASP.NET...32 Services web...33 1.5 Gestion des données : ADO.NET... 33 1.6 Un langage commun : le XML...34 2 Le langage C#...35 2.1 L intérêt du C# : l efficacité maximale... 37 La simplicité...37 L orientation composant...37 L interopérabilité...37 Les services web...38 Le Tout objet...38 Un apprentissage rapide...38 2.2 Les points forts du C# : ce qui fait la différence...38 L initialisation des variables...38 Le traitement des exceptions...38 La prise en compte des collections...39 La documentation...39 2.3 Une application console minimale : HelloWorldConsole... 39 Finalité et objectifs...39 Outils...39 Réalisation...40 Exécution...41 Explications...41
Amélioration...42 Explications...43 2.4 Une application WinForm minimale : HelloWorldWin... 44 Finalité...44 Outils...44 Réalisation...44 Explication...45 Exécution...45 Exécution...48 Explication...51 2.5 Une application ASP.NET minimale : HelloWorldASP (première partie)...52 Finalité...52 Outils nécessaires...52 Réalisation...53 Exécution...54 Explications...54 2.6 Une application ASP.NET minimale : HelloWorldASP (deuxième partie)... 55 Finalité...55 Objectif...55 Outils...55 Réalisation...55 Exécution...56 Explications...57 3 Un utilitaire pour le Web : Composant Upload...59 3.1 Les objectifs pédagogiques...61 3.2 La méthode utilisée...62 3.3 Les outils nécessaires...62 3.4 Passons à la pratique...63 Décor principal...63 Insertion des éléments ASPX...65 Programmation des éléments ASP: Upload.aspx.cs... 68 3.5 Tests et résultats...76 4 Analyser la configuration de sa machine : MesInfos. 79 4.1 Les objectifs pédagogiques...82
4.2 La méthode utilisée...82 4.3 Les outils nécessaires...83 4.4 Passons à la pratique...83 Réalisation de l interface graphique...83 Analyse du code généré par l éditeur graphique...87 Les événements...88 Recherche des informations...90 Changement de l état des services...92 4.5 Tests et résultats...93 5 Réaliser un WebService : Calculatrice...97 5.1 Les objectifs pédagogiques...99 5.2 La méthode utilisée...99 L interface graphique...100 Le service web...100 5.3 Les outils nécessaires...100 5.4 Passons à la pratique...101 L interface graphique...101 La gestion de la saisie...103 Le WebService...107 5.5 Tests et résultats...118 6 Créer ses propres contrôles web : WebMenu...121 6.1 Les objectifs pédagogiques...124 6.2 La méthode utilisée...125 Étude d un Webcontrol : le bouton... 125 6.3 Passons à la pratique...127 Préliminaires...128 Intégration dans un Webcontrol...132 Gestion des propriétés simples...142 Gestion des propriétés évoluées...148 6.4 Tests et résultats...159 7 Mise en œuvre d ADO.NET : MediaTheque...161 7.1 Les objectifs pédagogiques...163 7.2 La méthode utilisée...164
Mode Consultation...164 Mode Saisie des sorties...165 Mode Saisie des entrées...166 Mode Consultation des sorties...166 Stockage des informations...167 7.3 Passons à la pratique...168 L interface utilisateur...168 Avant d aborder la partie opérationnelle......174 La partie opérationnelle...177 7.4 Tests et résultats...199 8 Un logiciel de messagerie : SharpMail...201 8.1 Les objectifs pédagogiques...203 8.2 La méthode utilisée...204 Interface graphique...204 Réception...204 Lecture...205 Réponse...205 Nouveau message...205 Envoi...206 8.3 Passons à la pratique...206 Interface graphique...206 Réception des messages...223 Écriture d un nouveau message...234 Envoi des messages...236 Programmation des affichages...237 8.4 Tests et résultats...246 9 Un éditeur C# : SharpEdit...249 9.1 Les objectifs pédagogiques...252 9.2 La méthode utilisée...252 Fonction de copie...252 Recherche...252 Coloration...253 9.3 Passons à la pratique...253 Création des éléments graphiques...253 Fonctionnalités de l application...264 9.4 Tests et résultats...285
10 Un client FTP : SharpFTP...287 10.1 Les objectifs pédagogiques...290 10.2 La méthode utilisée...290 Le protocole FTP...290 L interface utilisateur...292 10.3 Les outils nécessaires...292 10.4 Passons à la pratique...293 L interface graphique...293 Les événements...298 Le protocole FTP...299 Les fonctionnalités...304 10.5 Tests et résultats...320 11 Un serveur HTTP : SharpHTTP...323 11.1 Les objectifs pédagogiques...325 Socket...325 Utilisation de DLL...326 Multithreading...326 11.2 La méthode utilisée...326 La librairie de classe : HttpServerLibrairie... 326 L interface graphique : SharpHTTP... 327 11.3 Passons à la pratique...328 HttpServerLibrairie...328 SharpHTTP...343 11.4 Tests et résultats...355 12 Un logiciel de dessin : SharpPaint...359 12.1 Les objectifs pédagogiques...361 12.2 La méthode utilisée...362 12.3 Passons à la pratique...365 L interface graphique...365 Les nouvelles classes...375 Les fonctions de dessin...380 La gestion des fichiers...386 12.4 Tests et résultats...395
13 Graphiques dynamiques pour le Web : SharpImage...397 13.1 Les objectifs pédagogiques...400 13.2 La méthode utilisée...400 Service web...400 Client web...401 13.3 Passons à la pratique...401 Le service web...401 Le décor du client...415 La page de génération...423 13.4 Tests et résultats...427 14 Un logiciel de Chat : SharpIRC...431 14.1 Les objectifs pédagogiques...435 14.2 La méthode utilisée...435 Principe retenu...435 Déroulement de l application...436 Structure de l application...439 La base de données...440 14.3 Passons à la pratique...441 Préliminaires...441 Interface utilisateur...448 Partie opérationnelle...452 14.4 Tests et résultats...464 15 Un forum de discussion : SharpNews...467 15.1 Les objectifs pédagogiques...469 15.2 La méthode utilisée...470 Choix technique...470 Fonctionnement de l application...470 La base de données...474 15.3 Passons à la pratique...475 Interface utilisateur...475 Partie opérationnelle...482 15.4 Tests et résultats...493
16 Annexes...497 16.1 Annexe1 : Le langage C#, la syntaxe... 499 Les mots clés...499 Les directives de compilation...503 Les opérateurs du langage...504 16.2 Annexe 2 : Les namespaces de la plate-forme.net... 505 Les namespaces...505 17 Index...511