Indholdsfortegnelse:
- Regelmæssige samlinger
- C # 2. 0 introducerede generiske samlinger. Generiske samlinger giver dig mulighed for at gemme typede samlinger af genstande, som angivet ved kørselstidspunktet.
- Endelig sikrer de samtidige klasser, at de objekter, du gemmer på en liste, er tilgængelige i ethvert hukommelsesrum, uanset hvilken processor. Det er en større aftale end du tror.
Video: Regular Expressions (Regex) Tutorial: How to Match Any Pattern of Text 2025
Ved Bill Sempf, Chuck Sphar, Stephen R. Davis
Hvis der er noget problem med. NET Framework fra C # Programmeres perspektiv, er det bare, at der er for mange gode ting. Mange klasser har så mange egenskaber og begivenheder, at det er svært at huske, hvad de mest brugte ting er. Her er fløden af afgrøden i Samling, Konfiguration og Async-klasser, der er samlet sammen for nem reference.
Holde ting i C # Samlingsklasser
Mange variabler er til lagring af en ting, som et tal eller en sætning. Et objekt kan have mange egenskaber, der lagrer meget information om et enkelt koncept. Nogle gange må du bare holde øje med en stor liste over ting. Det er her, hvor kollektionsklasserne kommer ind.
Samlingsklasserne i C # er awesome, fordi de kan hjælpe dig med at holde en liste over genstande eller en gruppe nøgler og værdier og give gratis adgang til søge-, proctor- og generelle vedligeholdelsesværktøjer. Det er meget nemmere end at skrive de to hundrede "sortere kunder efter efternavn" -metode denne måned.
C # har grundlæggende samlingskurser, generiske samlingsklasser og samtidige samlingsklasser. Disse sidste er til trådsikker drift i et multiprocessor-miljø. Alle disse kollektionsklasser er nyttige, hvis du ved, hvor og hvornår de skal bruges.
Regelmæssige samlinger
Regelmæssige samlinger gemmer uartede ting til dig. Hvis du ikke ved præcis, hvad du vil gemme, er regelmæssige samlinger til dig. De fleste alt i disse klasser lagres som objekt.
ikke reduceret).
HashTable
Kø
Stack
C # 2. 0 introducerede generiske samlinger. Generiske samlinger giver dig mulighed for at gemme typede samlinger af genstande, som angivet ved kørselstidspunktet.
Klasse
Beskrivelse | Ordbog |
---|---|
Bare en HastTable, undtagen skrevet, så du behøver ikke | gemme Objekt, Objekt. TKey og TValue er typer, så du kan gemme en
liste over, hvis du vil have. Liste |
Dette er den nye Array. Det er en skrevet liste over genstande. Ved | langt, anvendes den mest almindelige samlingsklasse. Det er standard.
Hvis du har brug for en liste over mennesker, er det en liste. Queue |
Ligner den ikke-typede kø, men godt skrevet! | SortedList |
Denne fantastiske ordbog implementerer ukomparabel, så den kan | sorteres.
Stak |
Ligesom den uslebne Stabel, undtagen skrevet. | Samtidige samlingsklasser |
Endelig sikrer de samtidige klasser, at de objekter, du gemmer på en liste, er tilgængelige i ethvert hukommelsesrum, uanset hvilken processor. Det er en større aftale end du tror.
Klasse
Beskrivelse | BlockingCollection |
---|---|
Det er en trådsikker klasse, der forhindrer en tråd | i at ændre et felt, der er tilgængeligt med en anden tråd.
Brilliant ting, virkelig. ConcurrentDictionary |
TValue> adgang til flere tråde.
|
ConcurrentQueue |
Husk at FIFO stack? Ja. Denne er generisk OG tråd | sikker.
ConcurrentStack |
De orkestriske samlinger er nyttige. De er | gavnlige for hukommelsen, for en ting. Alligevel er denne LIFO og
trådsikker. Konfiguration af C # |
En hel navneplads i klasser er designet til at konfigurere applikationer skrevet i nogen. NET-sprog, såsom C #, VB. NET, eller en af flere andre. Objektene i den er i det mindste lidt svære at navigere. Konfigurationen i. NET applikationer finder sted i en. config fil. Denne XML-formaterede fil har en node og en hel masse projektspecifikke noder indenfor. Henvisning til konfigurationen kræver et opkald til OpenExeConfiguration.
System. Konfiguration. Konfiguration config = ConfigurationManager. OpenExeConfiguration ();
Når det er gjort, er det ret nemt at få en henvisning til et afsnit. GetSection-metoden tager bare en streng, der er nodenavnet, og fordi config-filen er bare tekst, kan du gribe den når som helst.
var sectionName = & ldquo; Uanset hvad! & Rdquo;; System. Konfiguration. AppSettingsSection sektion = (Systemkonfiguration. AppSettingsSection) config. GetSection (sectionName);
Du kan tilføje sektioner til config-filen ved hjælp af XML-manipulationsværktøjerne i rammen. Du kan bruge en forudindstillet gruppe på sektioner til den tilsvarende funktionalitet.
Sektion
Beskrivelse | Idrifttagning |
---|---|
Beskriver. NET version til brug. | Runtime |
Lister the. NET elementer til at binde til den eksekverbare. | Netværk |
Beskriver proxy og andre netværksindstillinger. | Kryptografi |
Et sted at holde tilgængelige værdier, der henviser til kryptoressourcer | Konfiguration |
Det mest brugte afsnit. Det er her, hvor du beholder brugerdefinerede dele af config-filen. | Spor / Fejlfinding |
To indstillinger, der giver dig mulighed for at konfigurere sporing og logning. | Applikationsindstillinger (appsettings) |
Programmerede ting som databasestrengestrenge. | Webindstillinger (webindstillinger) |
ASP. NET specifikke detaljer. | Programmering Asynkront |
En masse Windows 8 handler om at være hurtig og flydende. Måden at gøre dette på er at bruge asynkrone metoder i tilbagekaldelser fra lang løbende funktionalitet.Problemet med dette er, at i C # er den bedste måde at implementere en asynkron metode på med gevind. Men du kan ikke altid afhænge af, hvornår genstande fra en træsoperation vil komme tilbage. Der skal være kontrol, hvis du vil have, at brugerne kan føle, at der er kontrol.
Indtast async og vent. async bruges til at erklære en asynkron funktion, som returnerer en opgave. Alle async-metoder skal indeholde mindst et afventende udtryk. afventer fortæller C # at tage henvist kode og køre den i en separat tråd end brugertråden. Bordet bryder ned de nye asynkrone dele af sproget.
Erklæring
Beskrivelse | async |
---|---|
En modifikator, der viser kompilatoren, at funktionen | ændrer sig, er asynkron.
afventer |
En operatør, der suspenderer udførelsen af den indeholdende | metode, indtil den afventerede opgave fuldendes.
Opgave |
Representerer en asynkron drift. | Opgave |
En asynkron operation, der returnerer en værdi. | Opgave. Fortsæt med |
En fortsættelse, der startes efter operationen i Opgave | er afsluttet.
|