FrameworkbibliothekenFramework Libraries

.NET verfügt über einen umfangreichen Standardsatz an Klassenbibliotheken, die entweder als Basisklassenbibliotheken (Kernsatz) oder Frameworkklassenbibliotheken (vollständiger Satz) bezeichnet werden..NET has an expansive standard set of class libraries, referred to as either the base class libraries (core set) or framework class libraries (complete set). Diese Bibliotheken bieten Implementierungen für viele allgemeine und App-spezifische Typen, Algorithmen und Hilfsprogrammfunktionen.These libraries provide implementations for many general and app-specific types, algorithms and utility functionality. Sowohl kommerzielle als auch communitybasierte Bibliotheken bauen auf den Frameworkklassenbibliotheken auf und bieten einfache, sofort einsatzbereite Bibliotheken für eine Vielzahl von Computingaufgaben.Both commercial and community libraries build on top of the framework class libraries, providing easy to use off-the-shelf libraries for a wide set of computing tasks.

Eine Teilmenge dieser Bibliotheken wird mit jeder .NET-Implementierung bereitgestellt.A subset of these libraries are provided with each .NET implementation. BCL-APIs (Base Class Library, Basisklassenbibliothek) werden in jeder .NET-Implementierung vorausgesetzt, weil sie von Entwicklern gewünscht und von beliebten Bibliotheken für die Ausführung benötigt werden.Base Class Library (BCL) APIs are expected with any .NET implementation, both because developers will want them and because popular libraries will need them to run. Über die BCL hinausgehende App-spezifische Bibliotheken – wie z.B. ASP.NET – sind nicht in allen .NET-Implementierungen verfügbar.App-specific libraries above the BCL, such as ASP.NET, will not be available on all .NET implementations.

BasisklassenbibliothekenBase Class Libraries

Basisklassenbibliotheken stellen die meisten grundlegenden Typen und Hilfsprogrammfunktionen bereit und bilden die Grundlage für alle anderen .NET-Klassenbibliotheken.The BCL provides the most foundational types and utility functionality and are the base of all other .NET class libraries. Sie sind darauf ausgerichtet, sehr allgemeine Implementierungen anzubieten, ohne einer bestimmten Arbeitsauslastung den Vorzug zu geben.They aim to provide very general implementations without any bias to any workload. Leistung ist immer ein wichtiger Gesichtspunkt, da je nach App unterschiedliche Richtlinien ein höheres Gewicht haben – z.B. niedrige Latenz gegenüber hohem Durchsatz oder geringer Arbeitsspeicherverbrauch gegenüber geringer CPU-Auslastung.Performance is always an important consideration, since apps might prefer a particular policy, such as low-latency to high-throughput or low-memory to low-CPU usage. Diese Bibliotheken sind generell auf hohe Leistung ausgelegt und versuchen, angesichts all der verschiedenen Leistungsanforderungen einen Mittelweg zu finden.These libraries are intended to be high-performance generally, and take a middle-ground approach according to these various performance concerns. Für die meisten Apps funktioniert diese Herangehensweise ziemlich gut.For most apps, this approach has been quite successful.

Primitive TypenPrimitive Types

.NET umfasst eine Reihe primitiver Typen, die (in unterschiedlichem Maß) in allen Programmen verwendet werden..NET includes a set of primitive types, which are used (to varying degrees) in all programs. Diese Typen enthalten Daten, beispielsweise Zahlen, Zeichenfolgen, Bytes und beliebige Objekte.These types contain data, such as numbers, strings, bytes and arbitrary objects. Die Sprache C# enthält Schlüsselwörter für diese Typen.The C# language includes keywords for these types. Unten finden Sie einen Beispielsatz dieser Typen, zusammen mit den entsprechenden C#-Schlüsselwörtern.A sample set of these types is listed below, with the matching C# keywords.

DatenstrukturenData Structures

.NET umfasst eine Reihe von Datenstrukturen, die die Arbeitsgrundlage für nahezu alle .NET-Apps darstellen..NET includes a set of data structures that are the workhorses of almost any .NET apps. Die meisten sind Auflistungen, es gibt jedoch auch andere Typen.These are mostly collections, but also include other types.

  • Array: Stellt ein Array aus stark typisierten Objekten dar, auf die über einen Index zugegriffen werden kann.Array - Represents an array of strongly types objects that can be accessed by index. Verfügt konstruktionsbedingt über eine festgelegte Größe.Has a fixed size, per its construction.
  • List<T>: Stellt eine stark typisierte Liste von Objekten dar, auf die über einen Index zugegriffen werden kann.List<T> - Represents a strongly typed list of objects that can be accessed by index. Die Größe wird nach Bedarf automatisch angepasst.Is automatically resized as needed.
  • Dictionary<TKey,TValue>: Stellt eine Auflistung aus Werten dar, die durch einen Schlüssel indiziert werden.Dictionary<TKey,TValue> - Represents a collection of values that are indexed by a key. Auf die Werte kann über einen Schlüssel zugegriffen werden.Values can be accessed via key. Die Größe wird nach Bedarf automatisch angepasst.Is automatically resized as needed.
  • Uri: Stellt eine Objektdarstellung eines URIs (Uniform Resource Identifier) und einfachen Zugriff auf die Teile des URIs bereit.Uri - Provides an object representation of a uniform resource identifier (URI) and easy access to the parts of the URI.
  • DateTime: Stellt einen Zeitpunkt dar, normalerweise durch Datum und Uhrzeit angegeben.DateTime - Represents an instant in time, typically expressed as a date and time of day.

Hilfsprogramm-APIsUtility APIs

.NET umfasst eine Reihe von Hilfsprogramm-APIs, die Funktionen für viele wichtige Aufgaben bereitstellen..NET includes a set of utility APIs that provide functionality for many important tasks.

  • HttpClient: Eine API zum Senden von HTTP-Anforderungen und Empfangen von HTTP-Antworten aus einer Ressource, die durch einen URI identifiziert wird.HttpClient - An API for sending HTTP requests and receiving HTTP responses from a resource identified by a URI.
  • XDocument: Eine API zum Laden und Abfragen von XML-Dokumenten mit LINQ.XDocument - An API for loading, and querying XML documents with LINQ.
  • StreamReader: Eine API zum Lesen von Dateien (StringWriter). Kann zum Schreiben von Dateien verwendet werden.StreamReader - An API for reading files (StringWriter) Can be used to write files.

App-Modell-APIsApp-Model APIs

Es gibt viele App-Modelle von unterschiedlichen Herstellern, die mit .NET verwendet werden können.There are many app-models that can be used with .NET, provided by several companies.

  • ASP.NET: Stellt ein Webframework zum Erstellen von Websites und -diensten bereit.ASP.NET - Provides a web framework for building Web sites and services. Unterstützt unter Windows, Linux und macOS (je nach ASP.NET-Version).Supported on Windows, Linux and macOS (depends on ASP.NET version).