.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.

Quick Filters

.NET Framework API Reference version 3.0

NameDescription
Accessibility NamespaceRepresents a managed wrapper for the Component Object Model (COM) accessibility interface.
IEHost.Execute Namespace
Microsoft.Aspnet.Snapin NamespaceContains classes that are necessary for the ASP.NET management console application to interact with the Microsoft Management Console (MMC).
Microsoft.Build.BuildEngine NamespaceRepresents the MSBuild engine. For more information, see MSBuild.
Microsoft.Build.Framework NamespaceContains the types that define how tasks and loggers interact with the MSBuild engine. For information, see MSBuild.
Microsoft.Build.Tasks NamespaceContains the implementation of all tasks shipping with MSBuild. For information, see MSBuild.
Microsoft.Build.Tasks.Deployment.Bootstrapper NamespaceContains classes used internally by MSBuild.
Microsoft.Build.Tasks.Deployment.ManifestUtilities NamespaceContains classes that MSBuild uses.
Microsoft.Build.Tasks.Hosting NamespaceContains classes used internally by MSBuild.
Microsoft.Build.Tasks.Windows NamespaceContains the implementation of all tasks shipping with MSBuild. The types in this namespace support the Windows Presentation Foundation (WPF) infrastructure and are not intended to be used directly from your code.
Microsoft.Build.Utilities NamespaceProvides helper classes that you can use to create your own MSBuild loggers and tasks. For information, see MSBuild.
Microsoft.CSharp NamespaceContains classes that support compilation and code generation using the C# language.
Microsoft.IE Namespace
Microsoft.JScript NamespaceContains classes that support compilation and code generation using the JScript language.
Microsoft.JScript.Vsa NamespaceContains interfaces that allow you to integrate Script for the.NET Framework script engines into JScript, and to compile and execute code at run time.
Microsoft.SqlServer.Server NamespaceThis is a helper library for Microsoft.Data.SqlClient, enabling cross framework support of UDT types. The library implements the required types on .NET Standard 2.0 for compatibility with .NET and .NET Core target frameworks and type forwards them when targeting .NET Framework. Contains classes, interfaces, and enumerations that are specific to the integration of the Microsoft .NET Framework common language runtime (CLR) into Microsoft SQL Server, and the SQL Server database engine process execution environment. Contains classes, interfaces, and enumerations that are specific to the integration of the Microsoft .NET Framework common language runtime (CLR) into Microsoft SQL Server, and the SQL Server database engine process execution environment.
Microsoft.VisualBasic NamespaceContains types that support the Visual Basic Runtime in Visual Basic.
Microsoft.VisualBasic.ApplicationServices NamespaceContains types that support the Visual Basic Application Model and provide access to application information.
Microsoft.VisualBasic.Compatibility.VB6 NamespaceContains functions and objects provided use by the tools for upgrading from Visual Basic 6.0 to Visual Basic 2008.
Microsoft.VisualBasic.CompilerServices NamespaceContains internal-use only types that support the Visual Basic compiler.
Microsoft.VisualBasic.Devices NamespaceContains types that support the My objects related to devices in Visual Basic.
Microsoft.VisualBasic.FileIO NamespaceContains types that support the My file system object in Visual Basic.
Microsoft.VisualBasic.Logging NamespaceContains types that support the My logging objects in Visual Basic and provides a simple log listener that directs logging output to file.
Microsoft.VisualBasic.MyServices NamespaceContains types that support My in Visual Basic.
Microsoft.VisualBasic.MyServices.Internal NamespaceContains internal-use only types that support My in Visual Basic.
Microsoft.VisualBasic.Vsa NamespaceContains objects that allow you to integrate Script for the .NET Framework script engines into Visual Basic, and to compile and execute code at run time.
Microsoft.VisualC NamespaceContains classes that support compilation and code generation using the C++ language.
Microsoft.Vsa Namespace
Microsoft.Vsa.Vb.CodeDOM Namespace
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.
Microsoft.Windows.Themes NamespaceProvides exposure to the set of themes defined by Windows Presentation Foundation. In WPF, a theme is a set of resources, defined at the system level, which provide the default appearance for controls and other visual elements of an application. WPF themes are created using styles and include Luna, Aero, Royale, and Classic. Only the client area of a WPF application uses these themes; the appearance of the window border and buttons that form the window chrome is controlled by the Win32 theme service.
Microsoft_VsaVb Namespace
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.CodeDom NamespaceContains classes that can be used to represent the elements and structure of a source code document. The classes in this namespace can be used to model the structure of a source code document that can be output as source code in a supported language using the functionality provided by the System.CodeDom.Compiler namespace.
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.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.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.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.Data NamespaceContains classes you can use to build custom design-time behavior for data-related components.
System.ComponentModel.Design.Serialization NamespaceProvides types that support customization and control of serialization at design time.
System.Configuration NamespaceContains the types that provide the programming model for handling configuration data.
System.Configuration.Assemblies NamespaceContains classes that are used to configure an assembly.
System.Configuration.Install NamespaceProvides classes that allow you to write custom installers for your own components. The Installer class is the base class for all custom installers in .NET Framework.
System.Configuration.Internal NamespaceContains configuration types that are intended for internal use only.
System.Configuration.Provider NamespaceContains the base classes shared by both server and client applications to support a pluggable model to easily add or remove functionality.
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.Design NamespaceContains classes that can be used to generate a custom typed-dataset.
System.Data.Odbc NamespaceThe System.Data.Odbc namespace is the .NET Framework Data Provider for ODBC.
System.Data.OleDb NamespaceThe System.Data.OleDb namespace is the.NET Framework Data Provider for OLE DB.
System.Data.OracleClient NamespaceThe System.Data.OracleClient namespace is the .NET Framework Data Provider for Oracle.
System.Data.Sql NamespaceContains classes that support SQL Server-specific functionality.
System.Data.SqlClient NamespaceThe System.Data.SqlClient namespace is the .NET Data Provider for SQL Server.
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.Deployment.Application NamespaceWith the System.Deployment.Application namespace, you can program custom upgrade behavior into your ClickOnce application.
System.Deployment.Internal NamespaceContains helper classes for accessing the internal members of ActivationContext and ApplicationIdentity objects.
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.Design NamespaceContains classes that can be used to extend design-time support for application monitoring and instrumentation.
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.DirectoryServices NamespaceProvides easy access to Active Directory Domain Services from managed code. The namespace contains two component classes, DirectoryEntry and DirectorySearcher, which use the Active Directory Services Interfaces (ADSI) technology. ADSI is the set of interfaces that Microsoft provides as a flexible tool for working with a variety of network providers. ADSI gives the administrator the ability to locate and manage resources on a network with relative ease, regardless of the size of the network.
System.DirectoryServices.ActiveDirectory NamespaceProvides a high level abstraction object model that builds around Microsoft Active Directory services tasks. The Active Directory service concepts such as forest, domain, site, subnet, partition, and schema are part of the object model.
System.DirectoryServices.Protocols NamespaceProvides the methods defined in the Lightweight Directory Access Protocol (LDAP) version 3 (V3) and Directory Services Markup Language (DSML) version 2.0 (V2) standards.
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.Drawing.Design NamespaceContains classes that extend design-time user interface (UI) logic and drawing.
System.Drawing.Drawing2D NamespaceProvides advanced two-dimensional and vector graphics functionality.
System.Drawing.Imaging NamespaceProvides advanced GDI+ imaging functionality. Basic graphics functionality is provided by the System.Drawing namespace.
System.Drawing.Printing NamespaceProvides print-related services for Windows Forms applications.
System.Drawing.Text NamespaceProvides advanced GDI+ typography functionality.
System.EnterpriseServices NamespaceProvides .NET objects with access to COM+ services making the .NET Framework objects more practical for enterprise applications.
System.EnterpriseServices.CompensatingResourceManager NamespaceProvides classes that allow you to use a Compensating Resource Manager (CRM) in managed code. A CRM is a service provided by COM+ that enables you to include nontransactional objects in Microsoft Distributed Transaction Coordinator (DTC) transactions. Although CRMs do not provide the capabilities of a full resource manager, they do provide transactional atomicity (all or nothing behavior) and durability through the recovery log.
System.EnterpriseServices.Internal NamespaceProvides infrastructure support for COM+ services. The classes and interfaces in this namespace are specifically intended to support calls into System.EnterpriseServices from the unmanaged COM+ classes.
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.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.Log NamespaceDefines an interface for logging to a record-oriented sequential I/O system.
System.IO.Packaging NamespaceProvides classes that support storage of multiple data objects in a single container.
System.IO.Ports NamespaceContains classes for controlling serial ports. The most important class, SerialPort, provides a framework for synchronous and event-driven I/O, access to pin and break states, and access to serial driver properties. It can be used to wrap Stream objects, allowing the serial port to be accessed by classes that use streams.
System.IdentityModel.Claims NamespaceContains classes that implement the Windows Communication Foundation (WCF) claims-based identity authorization model. This model includes the Claim class and the ClaimSet class. Beginning with .NET Framework 4.5 and the integration of Windows Identity Foundation (WIF) into the .NET Framework, the WCF claims-based identity model has been superseded by WIF. WIF provides a claims-based identity object model that can be used to provide authentication and authorization across several Microsoft product stacks, including the CLR, WCF, and ASP.NET. The WIF classes that represent claims, claim types, and identities and principals that are based on claims are contained in the System.Security.Claims namespace. Beginning with .NET 4.5, these classes should be used instead of those in the System.IdentityModel.Claims namespace.
System.IdentityModel.Policy NamespaceContains classes that are used to implement authorization policy when using the WCF claims-based identity model. Beginning with .NET Framework 4.5 and the integration of Windows Identity Foundation (WIF) into the .NET Framework, the WCF claims-based identity model has been superseded by WIF. WIF provides a claims-based identity object model that can be used to provide authentication and authorization across several Microsoft product stacks, including the CLR, WCF, and ASP.NET. In WIF, authorization policy is implemented by extending the ClaimsAuthorizationManager class. Beginning with .NET 4.5, authorization policy should be implemented by using WIF instead of the classes in the System.IdentityModel.Claims namespace.
System.IdentityModel.Selectors NamespaceContains classes that implement authentication in the Windows Communication Foundation (WCF) claims-based identity model. Beginning with .NET Framework 4.5 and the integration of Windows Identity Foundation (WIF) into the .NET Framework, the WCF claims-based identity model has been superseded by WIF. WIF provides a claims-based identity object model that can be used to provide authentication and authorization across several Microsoft product stacks, including the CLR, WCF, and ASP.NET. The WIF classes that represent security tokens and that are used to process security tokens are contained in the System.IdentityModel.Tokens namespace; for example, SecurityToken and SecurityTokenHandler. Beginning with .NET 4.5, the classes in the System.IdentityModel.Tokens namespace should be used instead of those in the System.IdentityModel.Selectors namespace.
System.IdentityModel.Tokens NamespaceContains base classes such as SecurityToken, SecurityTokenHandler, and SecurityKeyIdentifierClause, as well as classes that derive from these classes and represent several of the token types, artifacts, and handlers for which the Windows Identity Foundation (WIF) has built in support. This includes classes that contain support for SAML v1.1 and v2.0 tokens, such as: SamlSecurityToken, SamlSecurityTokenHandler, Saml2SecurityToken, and Saml2SecurityTokenHandler.
System.Management NamespaceProvides access to a rich set of management information and management events about the system, devices, and applications instrumented to the Windows Management Instrumentation (WMI) infrastructure. Applications and services can query for interesting management information (such as how much free space is left on the disk, what is the current CPU utilization, which database a certain application is connected to, and much more), using classes derived from ManagementObjectSearcher and ManagementQuery, or subscribe to a variety of management events using the ManagementEventWatcher class. The accessible data can be from both managed and unmanaged components in the distributed environment.
System.Management.Instrumentation NamespaceProvides the classes necessary for instrumenting applications for management and exposing their management information and events through WMI to potential consumers. Consumers such as Microsoft Application Center or Microsoft Operations Manager can then manage your application easily, and monitoring and configuring of your application is available for administrator scripts or other applications, both managed as well as unmanaged. Instrumentation of your application is easy to achieve using the InstrumentationClass custom attribute on classes you wish to expose, or using the provided BaseEvent and Instance base classes and the Instrumentation helper class.
System.Media NamespaceContains classes for playing sound files and accessing sounds provided by the system.
System.Messaging NamespaceProvides classes that allow you to connect to, monitor, and administer message queues on the network and send, receive, or peek messages.
System.Messaging.Design NamespaceContains classes that can be used to extend design-time support for System.Messaging classes.
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.Configuration NamespaceContains classes that applications use to programmatically access and update configuration settings for the System.Net namespaces.
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.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.Printing NamespaceProvides classes that enable you to automate the management of print servers, print queues, and print jobs.
System.Printing.IndexedProperties NamespaceProvides classes that enable rapidly copying the property settings of a print system object to another object of the same type. Also, enables iteration through the properties of print system objects and the discovery of their types at run time, without using reflection.
System.Printing.Interop NamespaceProvides interconversion of managed PrintTicket objects and unmanaged Graphics Device Interface (GDI) DEVMODE structures.
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.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.Resources.Tools NamespaceContains the StronglyTypedResourceBuilder class, which provides support for strongly typed resources. Beginning with .NET Framework version 2.0, this compile-time feature encapsulates access to resources by creating classes that contain a set of static read-only (get) properties, thus making it easier to consume resources.
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.Hosting NamespaceContains advanced types that are used in application activation within application domains.
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.CustomMarshalers NamespaceProvides internal marshaling support for .NET Framework.
System.Runtime.InteropServices.Expando NamespaceContains the IExpando interface which allows modification of an object by adding or removing its members.
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.Remoting.Activation NamespaceProvides classes and objects that support server and client activation of remote objects.
System.Runtime.Remoting.Channels NamespaceContains classes that support and handle channels and channel sinks, which are used as the transport medium when a client calls a method on a remote object.
System.Runtime.Remoting.Channels.Http NamespaceContains channels that use the HTTP protocol to transport messages and objects to and from remote locations. By default, the HTTP channels encode objects and method calls in SOAP format for transmission, but other encoding and decoding formatter sinks can be specified in the configuration properties of a channel. One of the most important classes of the System.Runtime.Remoting.Channels.Http namespace is the HttpChannel class.
System.Runtime.Remoting.Channels.Ipc NamespaceDefines a communication channel for remoting that uses the interprocess communication (IPC) system of the Windows operating system. Because it does not use network communication, the IPC channel is much faster than the HTTP and TCP channels, but it can only be used for communication between application domains on the same physical computer.
System.Runtime.Remoting.Channels.Tcp NamespaceContains channels that use the TCP protocol to transport messages and objects to and from remote locations. By default, the TCP channels encode objects and method calls in binary format for transmission, but other encoding and decoding formatter sinks can be specified in the configuration properties of a channel. One of the most important classes of the System.Runtime.Remoting.Channels.Tcp namespace is the TcpChannel class.
System.Runtime.Remoting.Contexts NamespaceContains objects that define the contexts all objects reside within. A context is an ordered sequence of properties that defines an environment for the objects within it. Contexts are created during the activation process for objects that are configured to require certain automatic services such synchronization, transactions, just-in-time (JIT) activation, security, and so on. Multiple objects can live inside a context.
System.Runtime.Remoting.Lifetime NamespaceContains classes that manage the lifetime of remote objects.
System.Runtime.Remoting.Messaging NamespaceContains classes used to create and transmit messages. The remoting infrastructure uses messages to communicate with remote objects. Messages are used to transmit remote method calls, to activate remote objects, and to communicate information. A message object carries a set of named properties, including action identifiers, envoy information, and parameters. Some of the most important classes of the System.Runtime.Remoting.Messaging namespace are the AsyncResult class, the RemotingSurrogateSelector class, and the ReturnMessage class.
System.Runtime.Remoting.Metadata NamespaceContains classes and attributes that can be used to customize generation and processing of SOAP for objects and fields. The classes of this namespace can be used to indicate the SOAPAction header field, type output, XML element name, and the method XML namespace URI. This information is used by the SOAP serializer during SOAP generation and the Soapsuds Tool (Soapsuds.exe) during Web Services Description Language (WSDL) generation. The information specified by the attributes in this namespace can be used on the receiving end of the generated SOAP to customize processing of the remoted method calls and objects. One of the most important classes of the System.Runtime.Remoting.Metadata namespace is SoapAttribute class. The SoapAttribute class is nonfunctional, and can only be used as the base class for all the metadata attributes.
System.Runtime.Remoting.Metadata.W3cXsd2001 NamespaceContains wrapper classes for the data types that conform to the W3C specification. All date and time types conform to the ISO standards specification.
System.Runtime.Remoting.MetadataServices NamespaceContains the classes that are used by the Soapsuds Tool (Soapsuds.exe) command-line tool and the user code to convert metadata to and from XML schema for the remoting infrastructure. Some of the most important classes of this namespace are the SdlChannelSink class and the MetaData class.
System.Runtime.Remoting.Proxies NamespaceContains classes that control and provide functionality for proxies. A proxy is a local object that is an image of a remote object. Proxies enable clients to access objects across remoting boundaries.
System.Runtime.Remoting.Services NamespaceContains service classes that provide functionality to .NET Framework. One of the most important classes of this namespace is the TrackingServices 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.Configuration NamespaceContains classes used to read the values found in application configuration under system.xml.serialization section. The classes in this namespace are used by the serialization infrastructure to handle the configuration elements and cannot be used directly. Instead, to configure the DataContractSerializer, create an application configuration file and use the following XML elements. <system.xml.serialization><dataContractSerializer><declaredTypes><add> element for <declaredTypes><knownType> element.
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.Formatters.Soap NamespaceContains the SoapFormatter class, which can be used to serialize and deserialize objects in the SOAP format. When building applications that uses the types in this namespace, you must reference the System.Runtime.Serialization.Formatters.Soap.dll assembly.
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.Authentication.ExtendedProtection.Configuration NamespaceProvides support for configuration of authentication using extended protection for applications.
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.Pkcs NamespaceProvides programming elements for Public Key Cryptography Standards (PKCS), including methods for signing data, exchanging keys, requesting certificates, public key encryption and decryption, and other security functions.
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.Cryptography.Xml NamespaceContains classes to support the creation and validation of XML digital signatures. The classes in this namespace implement the World Wide Web Consortium Recommendation, XML-Signature Syntax and Processing.
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.Security.RightsManagement NamespaceProvides types to support rights management of application-created content such as that stored in a Package or XpsDocument.
System.ServiceModel NamespaceProvides classes related to the service model.
System.ServiceModel.Activation NamespaceProvides classes related to service model activation.
System.ServiceModel.Activation.Configuration NamespaceRepresents the configuration settings for the SMSvcHost.exe tool. This namespace represents the configuration elements that can be configured in the SMSvcHost.exe.config file. Specifically, it includes all machine-wide settings that need to be configured.
System.ServiceModel.Channels NamespaceProvides classes related to service model channels.
System.ServiceModel.ComIntegration NamespaceDefines classes needed for integration with COM applications.
System.ServiceModel.Configuration NamespaceProvides classes related to service model configuration.
System.ServiceModel.Description NamespaceProvides classes related to the service model description.
System.ServiceModel.Diagnostics NamespaceContains an enumeration that is used to configure performance counters for diagnostics purposes.
System.ServiceModel.Dispatcher NamespaceProvides classes related to dispatching the service model.
System.ServiceModel.MsmqIntegration NamespaceContains classes that relate to Microsoft Message Queuing Service (MSMQ) integration, which allows communication between MSMQ applications and Windows Communication Foundation (WCF) applications.
System.ServiceModel.PeerResolvers NamespaceContains classes that allow developers to customize and extend the Peer Name Resolution Protocol service.
System.ServiceModel.Security NamespaceContains general security-related types.
System.ServiceModel.Security.Tokens NamespaceDeals with security tokens and certificates.
System.ServiceProcess NamespaceProvides classes that allow you to implement, install, and control Windows service applications. Services are long-running executables that run without a user interface. Implementing a service involves inheriting from the ServiceBase class and defining specific behavior to process when start, stop, pause, and continue commands are passed in, as well as custom behavior and actions to take when the system shuts down.
System.ServiceProcess.Design NamespaceContains classes that can be used to extend design-time support for Windows services applications.
System.Speech.AudioFormat NamespaceContains a single class, SpeechAudioFormatInfo, that contains information about the format of the audio that is being input to the speech recognition engine, or being output from the speech synthesis engine.
System.Speech.Recognition NamespaceContains Windows Desktop Speech technology types for implementing speech recognition.
System.Speech.Recognition.SrgsGrammar NamespaceWith the members of the System.Speech.Recognition.SrgsGrammar namespace, you can programmatically create grammars that comply with the W3C Speech Recognition Grammar Specification Version 1.0 (SRGS).
System.Speech.Synthesis NamespaceContains classes for initializing and configuring a speech synthesis engine, for creating prompts, for generating speech, for responding to events, and for modifying voice characteristics.
System.Speech.Synthesis.TtsEngine NamespaceSupports the creation of Speech Synthesis Markup Language (SSML) based custom engines for rendering text to speech (TTS).
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.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.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.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.Transactions.Configuration NamespaceContains classes that describe configuration options used by System.Transactions classes.
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.Web.Caching NamespaceProvides classes for caching frequently used data on the server.
System.Web.Compilation NamespaceContains classes for generating and compiling custom file types within the ASP.NET build environment.
System.Web.Configuration NamespaceContains classes that are used to set up ASP.NET configuration.
System.Web.Configuration.Internal NamespaceContains configuration types intended for internal use only.
System.Web.Handlers NamespaceContains HTTP handler classes that process HTTP requests to a Web server.
System.Web.Hosting NamespaceProvides the functionality for hosting ASP.NET applications from managed applications outside Microsoft Internet Information Services (IIS).
System.Web.Mail NamespaceContains classes that enable you to construct and send messages using the CDOSYS (Collaboration Data Objects for Windows 2000) message component. The mail message is delivered either through the SMTP mail service built into Microsoft Windows 2000 or through an arbitrary SMTP server. The classes in this namespace can be used from ASP.NET or from any managed application.
System.Web.Management NamespaceContains classes and interfaces for managing and monitoring the health of Web applications.
System.Web.Mobile NamespaceContains the core capabilities, including authentication and error handling, required for building ASP.NET mobile Web applications. For information about how to develop ASP.NET mobile applications, see the www.asp.net/mobile Web site.
System.Web.Profile NamespaceContains classes that are used to work with ASP.NET user profiles in Web server applications.
System.Web.RegularExpressions NamespaceProvides precompiled regular expressions that can be used to parse ASP.NET files. All members of the System.Web.RegularExpressions namespace are descendants of the Regex class.
System.Web.Security NamespaceContains classes that are used to implement ASP.NET security in Web server applications.
System.Web.Services NamespaceContains classes that enable you to create XML Web services using ASP.NET and XML Web service clients. XML Web services are applications that provide the ability to exchange messages in a loosely coupled environment using standard protocols such as HTTP, XML, XSD, SOAP, and WSDL. XML Web services enable the building of modular applications within and across companies in heterogeneous environments making them interoperable with a broad variety of implementations, platforms and devices. The SOAP-based XML messages of these applications can have well-defined (structured and typed), or loosely defined parts (using arbitrary XML). The ability of the messages to evolve over time without breaking the protocol is fundamental to the flexibility and robustness of XML Web services as a building block for the future of the Web.
System.Web.Services.Configuration NamespaceContains classes that configure how XML Web services created using ASP.NET run.
System.Web.Services.Description NamespaceContains classes that enable you to publicly describe an XML Web service by using the Web Services Description Language (WSDL). Each class in this namespace corresponds to a specific element in the WSDL specification, and the class hierarchy corresponds to the XML structure of a valid WSDL document. For more information about WSDL, see the WSDL specification.
System.Web.Services.Discovery NamespaceContains classes that allows XML Web service clients to locate the available XML Web services on a Web server through a process called XML Web services Discovery.
System.Web.Services.Protocols NamespaceContains classes that define the protocols used to transmit data across the wire during the communication between XML Web service clients and XML Web services created using ASP.NET.
System.Web.SessionState NamespaceProvides classes and interfaces that enable storage of data specific to a single client within a web application on the server. The session-state data is used to give the client the appearance of a persistent connection with the application. State information can be stored within local process memory or, for web farm configurations, it can be stored out of process using either the ASP.NET State service or a Microsoft SQL Server database.
System.Web.UI NamespaceProvides classes and interfaces that enable you to create ASP.NET server controls and ASP.NET Web pages for the user interface of your ASP.NET Web applications.
System.Web.UI.Adapters NamespaceContains the base classes for control adapters and page adapters. You can use these adapters to override the life-cycle states of pages and controls. This is useful if you want to modify a control's markup or behavior for new markup standards or for specific browsers.
System.Web.UI.Design NamespaceContains classes that can be used to extend design-time support for ASP.NET Web pages and for Web server controls.
System.Web.UI.Design.MobileControls NamespaceContains classes that provide design-time support for the classes in the System.Web.UI.MobileControls namespace. For information about how to develop ASP.NET mobile applications, see the www.asp.net/mobile Web site.
System.Web.UI.Design.MobileControls.Converters NamespaceContains classes that provide design-time support for data type converters in mobile controls. For information about how to develop ASP.NET mobile applications, see the www.asp.net/mobile Web site.
System.Web.UI.Design.WebControls NamespaceContains classes that can be used to extend design-time support for Web server controls.
System.Web.UI.Design.WebControls.WebParts NamespaceContains classes that provide design-time support for controls derived from classes in the System.Web.UI.WebControls.WebParts namespace.
System.Web.UI.HtmlControls NamespaceContains classes that allow you to create HTML server controls on a Web Forms page. HTML server controls run on the server and map directly to standard HTML tags supported by most browsers. This allows you to programmatically control the HTML elements on a Web Forms page.
System.Web.UI.MobileControls NamespaceContains a set of ASP.NET server controls that can render your application for different mobile devices. The APIs in this namespace are obsolete. For information about how to develop ASP.NET mobile applications, see the www.asp.net/mobile Web site.
System.Web.UI.MobileControls.Adapters NamespaceContains classes you can use to override the life-cycle stages of a mobile control to modify its default HTML, CHTML, or WML markup or behavior for new markup standards or for specific browsers and mobile devices. The APIs in this namespace are obsolete. For information about how to develop ASP.NET mobile applications, see the www.asp.net/mobile Web site.
System.Web.UI.MobileControls.Adapters.XhtmlAdapters NamespaceContains classes you can use to override the life-cycle stages of a mobile control to modify its default XHTML markup or behavior for new markup standards or for specific browsers and mobile devices. For information about how to develop ASP.NET mobile applications, see the www.asp.net/mobile Web site.
System.Web.UI.WebControls NamespaceContains classes that allow you to create Web server controls on a Web page. Web server controls run on the server and include form controls such as buttons and text boxes. They also include special-purpose controls such as a calendar. Because Web server controls run on the server, you can programmatically control these elements. Although Web server controls are rendered as HTML, their object model does not necessarily reflect HTML syntax.
System.Web.UI.WebControls.Adapters NamespaceContains classes that you can use to override the life-cycle stages of a Web control. The classes enable you to modify a control's markup or behavior for new markup standards or for specific browsers.
System.Web.UI.WebControls.WebParts NamespaceContains classes and interfaces known collectively as the Web Parts control set. You can use these classes to create Web pages whose appearance and behavior can be modified (personalized) by end users. Each user's personalized settings for a page are saved for future browser sessions.
System.Web.Util NamespaceProvides classes that enable callback methods to be run under the scope of a transaction and that enable work to be posted to separate threads.
System.Windows NamespaceProvides several important Windows Presentation Foundation (WPF) base element classes, various classes that support the WPF property system and event logic, and other types that are more broadly consumed by the WPF core and framework.
System.Windows.Annotations NamespaceProvides classes to support user-created annotations on content displayed in WPF document viewing controls.
System.Windows.Annotations.Storage NamespaceProvides types that define the storage architecture and mediums to save and retrieve user-created annotations.
System.Windows.Automation NamespaceProvides support for Windows Presentation Foundation (WPF) UI Automation clients.
System.Windows.Automation.Peers NamespaceDefines the AutomationPeer base class and a set of types that derive from it that correspond to .NET controls. Each AutomationPeer exposes the corresponding .NET control to Microsoft UI Automation.
System.Windows.Automation.Provider NamespaceProvides APIs for creating UI Automation providers.
System.Windows.Automation.Text NamespaceContains enumerations that specify text formatting and related behavior for Windows Presentation Foundation (WPF) UI automation.
System.Windows.Controls NamespaceProvides classes to create elements, known as controls, that enable a user to interact with an application. The control classes are at the core of the user's experience with any application because they allow a user to view, select, or enter data or other information.
System.Windows.Controls.Primitives NamespaceContains base classes and controls that are intended to be used as part of other more complex controls.
System.Windows.Converters NamespaceProvides classes to support type conversion during serialization in Windows Presentation Foundation (WPF).
System.Windows.Data NamespaceContains classes used for binding properties to data sources, data source provider classes, and data-specific implementations of collections and views.
System.Windows.Documents NamespaceContains types that support FixedDocument, FlowDocument, and XML Paper Specification (XPS) document creation.
System.Windows.Documents.DocumentStructures NamespaceProvides classes to describe the structure of an XpsDocument in terms of sections, paragraphs, figures, bulleted or numbered lists, and tables.
System.Windows.Documents.Serialization NamespaceProvides types that support the creation and use of run-time accessible plug-in serializers that read and write documents in different data formats.
System.Windows.Forms NamespaceContains classes for creating Windows-based applications that take full advantage of the rich user interface features available in the Microsoft Windows operating system.
System.Windows.Forms.ComponentModel.Com2Interop NamespaceContains helper classes that Visual Studio uses to display property pages while in design mode.
System.Windows.Forms.Design NamespaceContains classes that support design-time configuration and behavior for Windows Forms components. These classes consist of designer classes that provide support for Windows Forms components, a set of design-time services; UITypeEditor classes for configuring certain types of properties, and classes for importing ActiveX controls.
System.Windows.Forms.Design.Behavior NamespaceContains classes for creating custom user interface behavior for components at design time.
System.Windows.Forms.Integration NamespaceContains classes that support interoperation of Windows Forms and WPF controls.
System.Windows.Forms.Layout NamespaceContains classes for implementing layout behaviors in your form or control.
System.Windows.Forms.PropertyGridInternal NamespaceProvides internal support for the PropertyGrid control. The classes in this namespace support the .NET infrastructure and aren't intended to be used directly from your code.
System.Windows.Forms.VisualStyles NamespaceContains classes for rendering controls and other Windows user interface (UI) elements with visual styles in operating systems that support them.
System.Windows.Ink NamespaceProvides classes to interact with and manipulate ink on the Windows Presentation Foundation (WPF) platform.
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.Input.StylusPlugIns NamespaceProvides classes that support manipulating data from a tablet pen on the Windows Presentation Foundation (WPF) platform. These classes offer low-level control over Stylus input and the creation of digital ink Stroke objects. The StylusPlugIn class provides a mechanism for you to implement custom behavior and apply that behavior to the stream of data coming from the stylus device for the optimal performance.
System.Windows.Interop NamespaceProvides supporting types for interoperation between Windows Presentation Foundation (WPF) and other technologies such as Windows APIs and provides base classes for other specific interoperation scenarios involving 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.Windows.Markup.Localizer NamespaceProvides types that assist in the localization of binary XAML (BAML) sources.
System.Windows.Markup.Primitives NamespaceContains classes that support Extensible Application Markup Language (XAML) in Windows Presentation Foundation (WPF).
System.Windows.Media NamespaceProvides types that enable integration of rich media, including drawings, text, and audio/video content in Windows Presentation Foundation (WPF) applications.
System.Windows.Media.Animation NamespaceProvides types that support property animation functionality, including timelines, storyboards, and key frames.
System.Windows.Media.Converters NamespaceContains classes that are used by the MarkupWriter for serialization of Extensible Application Markup Language (XAML).
System.Windows.Media.Effects NamespaceProvides types that can be used to apply visual effects to bitmap images.
System.Windows.Media.Imaging NamespaceProvides types that are used to encode and decode bitmap images.
System.Windows.Media.Media3D NamespaceContains types that support 3-D presentation in Windows Presentation Foundation (WPF) applications.
System.Windows.Media.Media3D.Converters NamespaceContains classes that are used by the MarkupWriter for serialization of Extensible Application Markup Language (XAML).
System.Windows.Media.TextFormatting NamespaceProvides types that control formatting of text, typically at a lower level than control-based text presentation or the text object model.
System.Windows.Navigation NamespaceProvides types that support navigation, including navigating between windows and navigation journaling.
System.Windows.Resources NamespaceProvides low-level classes that support the Windows Presentation Foundation (WPF) resource model and the Resources build action.
System.Windows.Shapes NamespaceProvides access to a library of shapes that can be used in Extensible Application Markup Language (XAML) or code.
System.Windows.Threading NamespaceContains types to support the Windows Presentation Foundation (WPF) threading system.
System.Windows.Xps NamespaceProvides classes that write XPS documents to a data store or print queue.
System.Windows.Xps.Packaging NamespaceProvides types that allow applications to read and write the components of an XPS document.
System.Windows.Xps.Serialization NamespaceProvides types that support serialization of XPS documents.
System.Workflow.Activities NamespaceProvides classes related to Windows Workflow Foundation activities.
System.Workflow.Activities.Configuration NamespaceProvides classes that represent sections of the configuration file.
System.Workflow.Activities.Rules NamespaceContains a set of classes that define the conditions and actions that form a rule.
System.Workflow.Activities.Rules.Design NamespaceContains a set of classes that manage the Rule Set Editor and the Rule Condition Editor dialog boxes.
System.Workflow.ComponentModel NamespaceProvides classes related to the Windows Workflow Foundation component model.
System.Workflow.ComponentModel.Compiler NamespaceProvides classes related to the Windows Workflow Foundation component model compiler.
System.Workflow.ComponentModel.Design NamespaceProvides classes related to the Windows Workflow Foundation component model designers.
System.Workflow.ComponentModel.Serialization NamespaceProvides the infrastructure for managing the serialization of activities and workflows to and from extensible Application Markup Language (XAML) and CodeDOM.
System.Workflow.Runtime NamespaceProvides classes related to workflow runtime.
System.Workflow.Runtime.Configuration NamespaceContains classes that are used to configure the workflow runtime engine.
System.Workflow.Runtime.DebugEngine NamespaceContains classes and interfaces for use in debugging workflow instances.
System.Workflow.Runtime.Hosting NamespaceProvides classes related to Windows Workflow Foundation runtime hosting.
System.Workflow.Runtime.Tracking NamespaceContains classes and an interface related to tracking services.
System.Xml NamespaceProvides standards-based support for processing XML.
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.Serialization.Advanced NamespaceContains classes that allow you to customize the code generated from a Web Services Description Language (WSDL) document.
System.Xml.Serialization.Configuration NamespaceContains classes used to read the values found in application configuration files under the <system.xml.serialization> Element section.
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.
System.Xml.Xsl.Runtime NamespaceContains types that are used by the XSL transformation engine.
UIAutomationClientsideProviders NamespaceContains a single type that maps client automation providers.