.NET API browser

Welcome to the .NET API browser – your one-stop shop for all .NET-based APIs from Microsoft. Start searching for any managed APIs by typing in the box below.

If you have any feedback, create a new issue in the dotnet/dotnet-api-docs repo.

Snelfilters

API-naslag voor .NET version 9

NameDescription
Microsoft.CSharp.RuntimeBinder NamespaceProvides classes and interfaces that support interoperation between Dynamic Language Runtime and C#.
Microsoft.VisualBasic NamespaceContains types that support the Visual Basic Runtime in Visual Basic.
Microsoft.VisualBasic.CompilerServices NamespaceContains internal-use only types that support the Visual Basic compiler.
Microsoft.VisualBasic.FileIO NamespaceContains types that support the My file system object in Visual Basic.
Microsoft.Win32 NamespaceProvides two types of classes: those that handle events raised by the operating system and those that manipulate the system registry.
Microsoft.Win32.SafeHandles NamespaceContains classes that are abstract derivations of safe handle classes that provide common functionality supporting file and operating system handles.
System NamespaceContains fundamental classes and base classes that define commonly-used value and reference data types, events and event handlers, interfaces, attributes, and processing exceptions.
System.Buffers NamespaceContains types used in creating and managing memory buffers, such as those represented by Span<T> and Memory<T>.
System.Buffers.Binary NamespaceProvides static methods for reading and writing the binary representations of primitive types from and to spans of bytes, respectively.
System.Buffers.Text NamespaceThis namespace contains types that can be used to parse and format common data types to and from UTF-8 text representations.
System.CodeDom.Compiler NamespaceContains types for managing the generation and compilation of source code in supported programming languages. Code generators can each produce source code in a particular programming language based on the structure of Code Document Object Model (CodeDOM) source code models consisting of elements provided by the System.CodeDom namespace.
System.Collections NamespaceContains interfaces and classes that define various collections of objects, such as lists, queues, bit arrays, hash tables and dictionaries.
System.Collections.Concurrent NamespaceProvides several thread-safe collection classes that should be used in place of the corresponding types in the System.Collections and System.Collections.Generic namespaces whenever multiple threads are accessing the collection concurrently. However, access to elements of a collection object through extension methods or through explicit interface implementations are not guaranteed to be thread-safe and may need to be synchronized by the caller.
System.Collections.Frozen Namespace
System.Collections.Generic NamespaceContains interfaces and classes that define generic collections, which allow users to create strongly typed collections that provide better type safety and performance than non-generic strongly typed collections.
System.Collections.Immutable NamespaceContains interfaces and classes that define immutable collections.
System.Collections.ObjectModel NamespaceContains classes that can be used as collections in the object model of a reusable library. Use these classes when properties or methods return collections.
System.Collections.Specialized NamespaceContains specialized and strongly-typed collections; for example, a linked list dictionary, a bit vector, and collections that contain only strings.
System.ComponentModel NamespaceProvides classes that are used to implement the run-time and design-time behavior of components and controls. This namespace includes the base classes and interfaces for implementing attributes and type converters, binding to data sources, and licensing components.
System.ComponentModel.DataAnnotations NamespaceProvides attribute classes that are used to define metadata for ASP.NET MVC and ASP.NET data controls.
System.ComponentModel.DataAnnotations.Schema NamespaceProvides support for attribute classes that are used to define metadata for ASP.NET MVC and ASP.NET data controls.
System.ComponentModel.Design NamespaceContains classes that developers can use to build custom design-time behavior for components and user interfaces for configuring components at design time. The design time environment provides systems that enable developers to arrange components and configure their properties. Some components may require specific design-time only behavior to function properly in a design time environment. It may also be valuable to provide custom user interfaces which assist developers in configuring components or the values of complex data types. The classes and interfaces defined within this namespace can be used to build design-time behavior for components, access design-time services, and implement customized design-time configuration interfaces.
System.ComponentModel.Design.Serialization NamespaceProvides types that support customization and control of serialization at design time.
System.Configuration.Assemblies NamespaceContains classes that are used to configure an assembly.
System.Data NamespaceProvides access to classes that represent the ADO.NET architecture. ADO.NET lets you build components that efficiently manage data from multiple data sources.
System.Data.Common NamespaceContains classes shared by .NET data providers.
System.Data.SqlTypes NamespaceProvides classes for native data types in SQL Server. These classes provide a safer, faster alternative to the data types provided by the .NET Framework common language runtime (CLR). Using the classes in this namespace helps prevent type conversion errors caused by loss of precision. Because other data types are converted to and from SqlTypes behind the scenes, explicitly creating and using objects within this namespace also yields faster code.
System.Diagnostics NamespaceProvides classes that allow you to interact with system processes, event logs, and performance counters.
System.Diagnostics.CodeAnalysis NamespaceContains classes for interaction with code analysis tools. These tools are used to analyze code for conformance to coding conventions such as naming or security rules.
System.Diagnostics.Contracts NamespaceContains static classes for representing program contracts such as preconditions, postconditions, and invariants.
System.Diagnostics.Metrics NamespaceMetrics are numerical measurements reported over time, most often used to monitor the health of an application and generate alerts. For example, a web service might track how many requests it receives each second, how many milliseconds it took to respond, and how many of the responses sent an error back to the user. These metrics can be reported to a monitoring system at frequent, regular intervals. The System.Diagnostics.Metrics namespace can be used to add metrics to an application. The APIs work on all platforms supported by .NET and are designed to integrate well with OpenTelemetry's growing ecosystem of tools. They also integrate with .NET SDK tools, such as dotnet-counters. A listener API is available for developers that want to create custom tooling or adapters to other systems.
System.Diagnostics.SymbolStore NamespaceProvides classes that allow you to read and write debug symbol information, such as source line to Microsoft intermediate language (MSIL) maps. Compilers that target .NET can store the debug symbol information into programmer's database (PDB) files. Debuggers and code profiler tools can read the debug symbol information at run time.
System.Diagnostics.Tracing NamespaceProvides types and members that enable you to create strongly typed events to be captured by event tracing for Windows (ETW).
System.Drawing NamespaceProvides access to GDI+ basic graphics functionality. The System.Drawing.Drawing2D, System.Drawing.Imaging, and System.Drawing.Text namespaces provide more advanced functionality. For limitations, see the Remarks section.
System.Dynamic NamespaceProvides classes and interfaces that support Dynamic Language Runtime.
System.Formats.Asn1 NamespaceContains types used in reading and writing Abstract Syntax Notation One (ASN.1) data structures.
System.Formats.Tar NamespaceContains types used in reading and writing data in the Tape Archive (TAR) file archiving format.
System.Globalization NamespaceContains classes that define culture-related information, including language, country/region, calendars in use, format patterns for dates, currency, and numbers, and sort order for strings. These classes are useful for writing globalized (internationalized) applications. Classes such as StringInfo and TextInfo provide advanced globalization functionalities, including surrogate support and text element processing.
System.IO NamespaceContains types that allow reading and writing to files and data streams, and types that provide basic file and directory support.
System.IO.Compression NamespaceContains classes that provide basic compression and decompression services for streams.
System.IO.Enumeration NamespaceProvides classes, structs, and delegates to search and enumerate file system elements.
System.IO.IsolatedStorage NamespaceContains types that allow the creation and use of isolated stores. With these stores, you can read and write data that less trusted code cannot access and prevent the exposure of sensitive information that can be saved elsewhere on the file system. Data is stored in compartments that are isolated by the current user and by the assembly in which the code exists. Additionally, data can be isolated by domain. Roaming profiles can be used in conjunction with isolated storage so isolated stores will travel with the user's profile. The IsolatedStorageScope enumeration indicates different types of isolation. For more information about when to use isolated storage, see Isolated Storage.
System.IO.MemoryMappedFiles NamespaceProvides classes for using a memory-mapped file, which maps the contents of a file to an application's logical address space.
System.IO.Pipelines NamespaceProvides types for performing complex, high performance input-output (IO) operations.
System.IO.Pipes NamespaceContains types that provide a means for interprocess communication through anonymous and/or named pipes.
System.Linq NamespaceProvides classes and interfaces that support queries that use Language-Integrated Query (LINQ).
System.Linq.Expressions NamespaceContains classes, interfaces and enumerations that enable language-level code expressions to be represented as objects in the form of expression trees.
System.Net NamespaceProvides a simple programming interface for many of the protocols used on networks today. Classes in the System.Net namespace can be used to develop Windows Store apps or desktop apps. When used in a Windows Store app, classes in the System.Net namespace are affected by network isolation feature, part of the application security model used by the Windows Developer Preview. The appropriate network capabilities must be enabled in the app manifest for a Windows Store app for the system to allow network access by a Windows Store app. For more information, see the Network Isolation for Windows Store Apps.
System.Net.Cache NamespaceDefines the types and enumerations used to define cache policies for resources obtained using the WebRequest and HttpWebRequest classes.
System.Net.Http NamespaceProvides a programming interface for modern HTTP applications.
System.Net.Http.Headers NamespaceProvides support for collections of HTTP headers used by the System.Net.Http namespace.
System.Net.Http.Json NamespaceProvides extension methods for HttpClient and HttpContent that perform automatic serialization and deserialization using System.Text.Json.
System.Net.Http.Metrics NamespaceProvides additional APIs for advanced metrics use-cases.
System.Net.Mail NamespaceContains classes used to send electronic mail to a Simple Mail Transfer Protocol (SMTP) server for delivery.
System.Net.Mime NamespaceContains types that are used to represent Multipurpose Internet Mail Exchange (MIME) headers. These types are used with the types in the System.Net.Mail namespace to specify Content-Type, Content-Disposition, and Content-transfer-Encoding headers when using the SmtpClient class to send email.
System.Net.NetworkInformation NamespaceProvides access to network traffic data, network address information, and notification of address changes for the local computer. The namespace also contains classes that implement the Ping utility. You can use Ping and related classes to check whether a computer is reachable across the network.
System.Net.Quic NamespaceContains types that implement the QUIC protocol specified by RFC 9000.
System.Net.Security NamespaceProvides network streams for secure communications between hosts.
System.Net.Sockets NamespaceProvides a managed implementation of the Windows Sockets (Winsock) interface for developers who need to tightly control access to the network.
System.Net.WebSockets NamespaceProvides a managed implementation of the WebSocket interface for developers.
System.Numerics NamespaceContains numeric types that complement the numeric primitives, such as Byte, Double, and Int32, that are defined by .NET.
System.Reflection NamespaceContains types that retrieve information about assemblies, modules, members, parameters, and other entities in managed code by examining their metadata. These types also can be used to manipulate instances of loaded types, for example to hook up events or to invoke methods. To dynamically create types, use the System.Reflection.Emit namespace.
System.Reflection.Emit NamespaceContains classes that allow a compiler or tool to emit metadata and Microsoft intermediate language (MSIL) and optionally generate a PE file on disk. The primary clients of these classes are script engines and compilers.
System.Reflection.Metadata NamespaceProvides low-level functionality for reading assembly metadata according to ECMA-335. This namespace is designed to be used by compilers and other tools that need to read assembly metadata.
System.Reflection.Metadata.Ecma335 NamespaceProvides low-level functionality for writing assembly metadata according to ECMA-335.
System.Reflection.PortableExecutable NamespaceProvides classes related to reading or writing Portable Executable (PE) files.
System.Resources NamespaceProvides classes and interfaces that allow developers to create, store, and manage various culture-specific resources used in an application. One of the most important classes of the System.Resources namespace is the ResourceManager class.
System.Runtime NamespaceContains advanced types that support diverse namespaces such as the System, Runtime, and the Security namespaces.
System.Runtime.CompilerServices NamespaceProvides functionality for compiler writers who use managed code to specify attributes in metadata that affect the run-time behavior of the common language runtime.
System.Runtime.ConstrainedExecution NamespaceDefines a set of types that enumerate and define a contract for reliability between the author of some code, and the developers who take a dependency on that code. The types in the System.Runtime.ConstrainedExecution namespace are intended for use in constrained execution regions (CERs).
System.Runtime.ExceptionServices NamespaceProvides classes for advanced exception handling.
System.Runtime.InteropServices NamespaceProvides a wide variety of members that support COM interop and platform invoke services. If you are unfamiliar with these services, see Interoperating with Unmanaged Code.
System.Runtime.InteropServices.ComTypes NamespaceContains managed types that correspond to types used by COM interop.
System.Runtime.InteropServices.JavaScript NamespaceContains JSImportAttribute and JSExportAttribute, which can be used to interop with JavaScript when running in the browser or other WASM architectures.
System.Runtime.InteropServices.Marshalling NamespaceContains support types for source-generated interop, such as MarshalUsingAttribute.
System.Runtime.InteropServices.ObjectiveC NamespaceContains classes that support interoperation between managed code and the Objective-C Runtime.
System.Runtime.InteropServices.Swift NamespaceSupport types for .NET interop with Swift code.
System.Runtime.Intrinsics NamespaceContains types used to create and convey register states in various sizes and formats for use with instruction-set extensions. For the instructions to manipulate these registers, see System.Runtime.Intrinsics.X86 and System.Runtime.Intrinsics.Arm.
System.Runtime.Intrinsics.Arm NamespaceExposes select instruction-set extensions for ARM systems. These instruction sets are expressed as separate classes for each extension. Support for any extension within the current environment can be determined by querying the IsSupported property on the respective type.
System.Runtime.Intrinsics.Wasm Namespace
System.Runtime.Intrinsics.X86 NamespaceExposes select instruction-set extensions for x86 and x64 systems. These instruction sets are expressed as separate classes for each extension. Support for any extension within the current environment can be determined by querying the IsSupported property on the respective type.
System.Runtime.Loader NamespaceProvides interfaces and classes to allow developers the opportunity to influence runtime loading behavior.
System.Runtime.Remoting NamespaceProvides classes and interfaces that allow developers to create and configure distributed applications. Some of the more important classes of the System.Runtime.Remoting namespace are the RemotingConfiguration class, the RemotingServices class, and the ObjRef class.
System.Runtime.Serialization NamespaceContains classes that can be used for serializing and deserializing objects. Serialization is the process of converting an object or a graph of objects into a linear sequence of bytes for either storage or transmission to another location. Deserialization is the process of taking in stored information and recreating objects from it.
System.Runtime.Serialization.DataContracts Namespace
System.Runtime.Serialization.Formatters NamespaceProvides common enumerations, interfaces, and classes that are used by serialization formatters.
System.Runtime.Serialization.Formatters.Binary NamespaceContains the BinaryFormatter class, which can be used to serialize and deserialize objects in binary format.
System.Runtime.Serialization.Json NamespaceProvides classes related to Json serialization.
System.Runtime.Versioning NamespaceContains advanced types that support versioning in side by side implementations of .NET.
System.Security NamespaceProvides the underlying structure of the common language runtime security system, including base classes for permissions.
System.Security.AccessControl NamespaceProvides programming elements that control access to and audit security-related actions on securable objects.
System.Security.Authentication NamespaceProvides a set of enumerations that describe the security of a connection. These enumerations include CipherAlgorithmType, ExchangeAlgorithmType, HashAlgorithmType, and SslProtocols.
System.Security.Authentication.ExtendedProtection NamespaceProvides support for authentication using extended protection for applications.
System.Security.Claims NamespaceContains classes that implement claims-based identity in .NET, including classes that represent claims, claims-based identities, and claims-based principals.
System.Security.Cryptography NamespaceProvides cryptographic services, including secure encoding and decoding of data, as well as many other operations, such as hashing, random number generation, and message authentication. For more information, see Cryptographic Services.
System.Security.Cryptography.X509Certificates NamespaceContains the common language runtime implementation of the Authenticode X.509 v.3 certificate. This certificate is signed with a private key that uniquely and positively identifies the holder of the certificate.
System.Security.Permissions NamespaceDefines classes that control access to operations and resources based on policy.
System.Security.Policy NamespaceContains code groups, membership conditions, and evidence. These three types of classes are used to create the rules applied by the common language runtime security policy system. Evidence classes are the input to security policy and membership conditions are the switches; together these create policy statements and determine the granted permission set. Policy levels and code groups are the structure of the policy hierarchy. Code groups are the encapsulation of a rule and are arranged hierarchically in a policy level.
System.Security.Principal NamespaceDefines a principal object that represents the security context under which code is running. For more information, see Role-Based Security.
System.Text NamespaceContains classes that represent ASCII and Unicode character encodings; abstract base classes for converting blocks of characters to and from blocks of bytes; and a helper class that manipulates and formats String objects without creating intermediate instances of String.
System.Text.Encodings.Web NamespaceContains a base class that represent a web encoder; subclasses that represent HTML, JavaScript, and Url character encoding; and a class that represents a filter for allowing only certain characters, character ranges, or code points to be encoded.
System.Text.Json NamespaceProvides high-performance, low-allocating, and standards-compliant capabilities to process JavaScript Object Notation (JSON), which includes serializing objects to JSON text and deserializing JSON text to objects, with UTF-8 support built-in. It also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM) for random access of the JSON elements within a structured view of the data.
System.Text.Json.Nodes NamespaceProvides types for handling an in-memory writeable document object model (DOM) for random access of the JSON elements within a structured view of the data.
System.Text.Json.Schema Namespace
System.Text.Json.Serialization NamespaceContains classes that are used to customize and extend serialization and deserialization of objects into JSON formatted documents or streams, either via an attribute model or via type converters.
System.Text.Json.Serialization.Metadata Namespace
System.Text.RegularExpressions NamespaceProvides regular expression functionality that may be used from any platform or language that runs within .NET. In addition to the types contained in this namespace, the RegexStringValidator class enables you to determine whether a particular string conforms to a regular expression pattern.
System.Text.Unicode NamespaceContains types that let you retrieve and work with named Unicode ranges.
System.Threading NamespaceProvides classes and interfaces that enable multithreaded programming. In addition to classes for synchronizing thread activities and access to data (Mutex, Monitor, Interlocked, AutoResetEvent, and so on), this namespace includes a ThreadPool class that allows you to use a pool of system-supplied threads, and a Timer class that executes callback methods on thread pool threads.
System.Threading.Channels NamespaceProvides a set of synchronization data structures for passing data between producers and consumers asynchronously.
System.Threading.Tasks NamespaceProvides types that simplify the work of writing concurrent and asynchronous code. The main types are Task which represents an asynchronous operation that can be waited on and cancelled, and Task<TResult>, which is a task that can return a value. The TaskFactory class provides static methods for creating and starting tasks, and the TaskScheduler class provides the default thread scheduling infrastructure.
System.Threading.Tasks.Dataflow NamespaceProvides an actor-based programming model that supports in-process message passing for coarse-grained dataflow and pipelining tasks.
System.Threading.Tasks.Sources NamespaceProvides types for creating ValueTask and ValueTask<TResult> optimized to minimize allocations. The IValueTaskSource and IValueTaskSource<TResult> interfaces can be implemented on objects used to provide the backing implementations for ValueTask and ValueTask<TResult>, and ManualResetValueTaskSourceCore<TResult> can be used to implement the core logic necessary to support the task lifecycle. These are advanced types and need only be used in specialized situations where performance is paramount.
System.Timers NamespaceProvides the Timer component, which allows you to raise an event on a specified interval.
System.Transactions NamespaceContains classes that allow you to write your own transactional application and resource manager. Specifically, you can create and participate in a transaction (local or distributed) with one or multiple participants.
System.Web NamespaceFor .NET Core and .NET 5+, this namespace contains the HttpUtility class. For .NET Framework, this namespace contains classes and interfaces that enable browser-server communication. These classes include the HttpRequest class, which provides extensive information about the current HTTP request; the HttpResponse class, which manages HTTP output to the client; and the HttpServerUtility class, which provides access to server-side utilities and processes. System.Web also includes classes for cookie manipulation, file transfer, exception information, and output cache control in .NET Framework.
System.Windows.Input NamespaceMost of the types in this namespace support the Windows Presentation Foundation (WPF) input system. This includes device abstraction classes for mouse, keyboard, and stylus devices, a common input manager class, support for commanding and custom commands, and various utility classes. However, some of the types are applicable beyond WPF.
System.Windows.Markup NamespaceProvides types to support XAML. Some of these types are located in WPF assemblies and are specific to WPF scenarios that involve XAML. Other types in this namespace provide support for .NET XAML Services in general, and don't require referencing WPF assemblies.
System.Xml NamespaceProvides standards-based support for processing XML.
System.Xml.Linq NamespaceContains the classes for LINQ to XML. LINQ to XML is an in-memory XML programming interface that enables you to modify XML documents efficiently and easily.
System.Xml.Resolvers NamespaceProvides support for prepopulating the cache with DTDs or XML streams.
System.Xml.Schema NamespaceContains the XML classes that provide standards-based support for XML schema definition language (XSD) schemas.
System.Xml.Serialization NamespaceContains classes that are used to serialize objects into XML format documents or streams.
System.Xml.XPath NamespaceContains the classes that define a cursor model for navigating and editing XML information items as instances of the XQuery 1.0 and XPath 2.0 Data Model.
System.Xml.Xsl NamespaceProvides support for Extensible Stylesheet Transformation (XSLT) transforms. It supports the W3C XSL Transformations (XSLT) Version 1.0 Recommendation.