System Namespace

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

The System namespace contains fundamental classes and base classes that define commonly-used value and reference data types, events and event handlers, interfaces, attributes, and processing exceptions.

Other classes provide services supporting data type conversion, method parameter manipulation, mathematics, remote and local program invocation, application environment management, and supervision of managed and unmanaged applications.

Classes

Class Description
AccessViolationException The exception that is thrown when there is an attempt to read or write protected memory.
Activator Contains methods to create types of objects locally. This class cannot be inherited.
AggregateException Represents one or more errors that occur during application execution.
AppDomain Represents an application domain, which is an isolated environment where applications execute. This class cannot be inherited.
AppDomainManager Provides a managed equivalent of an unmanaged host.
AppDomainSetup Represents assembly binding information that can be added to an instance of AppDomain.
AppDomainUnloadedException The exception that is thrown when an attempt is made to access an unloaded application domain.
ApplicationException The exception that is thrown when a non-fatal application error occurs.
ArgumentException The exception that is thrown when one of the arguments provided to a method is not valid.
ArgumentNullException The exception that is thrown when a null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.
ArgumentOutOfRangeException The exception that is thrown when the value of an argument is outside the allowable range of values as defined by the invoked method.
ArithmeticException The exception that is thrown for errors in an arithmetic, casting, or conversion operation.
Array Provides methods for creating, manipulating, searching, and sorting arrays, thereby serving as the base class for all arrays in the common language runtime.
ArrayTypeMismatchException The exception that is thrown when an attempt is made to store an element of the wrong type within an array.
Attribute Represents the base class for custom attributes.
AttributeUsageAttribute Specifies the usage of another attribute class. This class cannot be inherited.
BadImageFormatException The exception that is thrown when the file image of a DLL or an executable program is invalid.
BitConverter Converts base data types to an array of bytes, and an array of bytes to base data types.
Buffer Manipulates arrays of primitive types.
CannotUnloadAppDomainException The exception that is thrown when an attempt to unload an application domain fails.
CLSCompliantAttribute Indicates whether a program element is compliant with the Common Language Specification (CLS). This class cannot be inherited.
Console Infrastructure. Represents the standard input, output, and error streams for console applications. This class cannot be inherited.
ContextStaticAttribute Obsolete. Indicates that the value of a static field is unique for a particular context.
Convert Converts a base data type to another base data type.
DataMisalignedException The exception that is thrown when a unit of data is read from or written to an address that is not a multiple of the data size. This class cannot be inherited.
DBNull Represents a nonexistent value. This class cannot be inherited.
Delegate Represents a delegate, which is a data structure that refers to a static method or to a class instance and an instance method of that class.
DivideByZeroException The exception that is thrown when there is an attempt to divide an integral or decimal value by zero.
DllNotFoundException The exception that is thrown when a DLL specified in a DLL import cannot be found.
EntryPointNotFoundException The exception that is thrown when an attempt to load a class fails due to the absence of an entry method.
Enum Provides the base class for enumerations.
Environment Provides information about, and means to manipulate, the current environment and platform. This class cannot be inherited.
EventArgs EventArgs is the base class for classes containing event data.
Exception Represents errors that occur during application execution.
ExecutionEngineException Obsolete. The exception that is thrown when there is an internal error in the execution engine of the common language runtime. This class cannot be inherited.
FieldAccessException The exception that is thrown when there is an invalid attempt to access a private or protected field inside a class.
FileStyleUriParser A customizable parser based on the File scheme.
FlagsAttribute Indicates that an enumeration can be treated as a bit field; that is, a set of flags.
FormatException The exception that is thrown when the format of an argument does not meet the parameter specifications of the invoked method.
FtpStyleUriParser A customizable parser based on the File Transfer Protocol (FTP) scheme.
GC Controls the system garbage collector, a service that automatically reclaims unused memory.
GenericUriParser A customizable parser for a hierarchical URI.
HttpStyleUriParser A customizable parser based on the HTTP scheme.
IndexOutOfRangeException The exception that is thrown when an attempt is made to access an element of an array with an index that is outside the bounds of the array. This class cannot be inherited.
InvalidCastException The exception that is thrown for invalid casting or explicit conversion.
InvalidOperationException The exception that is thrown when a method call is invalid for the object's current state.
InvalidProgramException The exception that is thrown when a program contains invalid Microsoft intermediate language (MSIL) or metadata. Generally this indicates a bug in the compiler that generated the program.
InvalidTimeZoneException The exception that is thrown when time zone information is invalid.
Lazy<(Of <(T>)>) Provides support for lazy initialization.
Lazy<(Of <(T, TMetadata>)>) Provides an extension of the Lazy<(Of <(T>)>) class with support for metadata.
Math Provides constants and static methods for trigonometric, logarithmic, and other common mathematical functions.
MemberAccessException The exception that is thrown when an attempt to access a class member fails.
MethodAccessException The exception that is thrown when there is an invalid attempt to access a private or protected method inside a class.
MissingFieldException The exception that is thrown when there is an attempt to dynamically access a field that does not exist.
MissingMemberException The exception that is thrown when there is an attempt to dynamically access a class member that does not exist.
MissingMethodException The exception that is thrown when there is an attempt to dynamically access a method that does not exist.
MTAThreadAttribute Indicates that the COM threading model for an application is multithreaded apartment (MTA).
MulticastDelegate Represents a multicast delegate; that is, a delegate that can have more than one element in its invocation list.
MulticastNotSupportedException The exception that is thrown when there is an attempt to combine two delegates based on the Delegate type instead of the MulticastDelegate type. This class cannot be inherited.
NotFiniteNumberException The exception that is thrown when a floating-point value is positive infinity, negative infinity, or Not-a-Number (NaN).
NotImplementedException The exception that is thrown when a requested method or operation is not implemented.
NotSupportedException The exception that is thrown when an invoked method is not supported, or when there is an attempt to read, seek, or write to a stream that does not support the invoked functionality.
Nullable Supports a value type that can be assigned nullNothingnullptra null reference (Nothing in Visual Basic) like a reference type. This class cannot be inherited.
NullReferenceException The exception that is thrown when there is an attempt to dereference a null object reference.
Object Supports all classes in the .NET Framework class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all classes in the .NET Framework; it is the root of the type hierarchy.
ObjectDisposedException The exception that is thrown when an operation is performed on a disposed object.
ObsoleteAttribute Marks the program elements that are no longer in use. This class cannot be inherited.
OperatingSystem Represents information about an operating system, such as the version and platform identifier. This class cannot be inherited.
OperationCanceledException The exception that is thrown in a thread upon cancellation of an operation that the thread was executing.
OutOfMemoryException The exception that is thrown when there is not enough memory to continue the execution of a program.
OverflowException The exception that is thrown when an arithmetic, casting, or conversion operation in a checked context results in an overflow.
ParamArrayAttribute Indicates that a method will allow a variable number of arguments in its invocation. This class cannot be inherited.
PlatformNotSupportedException The exception that is thrown when a feature does not run on a particular platform.
Progress<(Of <(T>)>) Provides an IProgress<(Of <(T>)>) that invokes callbacks for each reported progress value.
Random Represents a pseudo-random number generator, a device that produces a sequence of numbers that meet certain statistical requirements for randomness.
RankException The exception that is thrown when an array with the wrong number of dimensions is passed to a method.
ResolveEventArgs Provides data for the event that resolves assembly loads. Not supported in Windows Phone apps.
StackOverflowException The exception that is thrown when the execution stack overflows because it contains too many nested method calls. This class cannot be inherited.
STAThreadAttribute Indicates that the COM threading model for an application is single-threaded apartment (STA).
String Represents text as a series of Unicode characters.
StringComparer Represents a string comparison operation that uses specific case and culture-based or ordinal comparison rules.
SystemException Defines the base class for predefined exceptions in the System namespace.
ThreadStaticAttribute Indicates that the value of a static field is unique for each thread.
TimeoutException The exception that is thrown when the time allotted for a process or operation has expired.
TimeZoneInfo Represents a time zone.
Tuple Provides static methods for creating tuple objects.
Tuple<(Of <(T1>)>) Represents a 1-tuple, or singleton.
Tuple<(Of <(T1, T2>)>) Represents a 2-tuple, or pair.
Tuple<(Of <(T1, T2, T3>)>) Represents a 3-tuple, or triple.
Tuple<(Of <(T1, T2, T3, T4>)>) Represents a 4-tuple, or quadruple.
Tuple<(Of <(T1, T2, T3, T4, T5>)>) Represents a 5-tuple, or quintuple.
Tuple<(Of <(T1, T2, T3, T4, T5, T6>)>) Represents a 6-tuple, or sextuple.
Tuple<(Of <(T1, T2, T3, T4, T5, T6, T7>)>) Represents a 7-tuple, or septuple.
Tuple<(Of <(T1, T2, T3, T4, T5, T6, T7, TRest>)>) Represents an n-tuple, where n is 8 or greater.
Type Represents type declarations: class types, interface types, array types, value types, enumeration types, type parameters, generic type definitions, and open or closed constructed generic types.
TypeAccessException The exception that is thrown when a method attempts to use a type that it does not have access to.
TypeInitializationException The exception that is thrown as a wrapper around the exception thrown by the class initializer. This class cannot be inherited.
TypeLoadException The exception that is thrown when type-loading failures occur.
UnauthorizedAccessException The exception that is thrown when the operating system denies access because of an I/O error or a specific type of security error.
UnhandledExceptionEventArgs Provides data for the event that is raised when there is an exception that is not handled in any application domain.
Uri Provides an object representation of a uniform resource identifier (URI) and easy access to the parts of the URI.
UriBuilder Provides a custom constructor for uniform resource identifiers (URIs) and modifies URIs for the Uri class.
UriFormatException The exception that is thrown when an invalid Uniform Resource Identifier (URI) is detected.
UriParser Parses a new URI scheme. This is an abstract class.
UriTypeConverter Converts instances of the String type to Uri instances.
ValueType Provides the base class for value types.
Version Represents the version number of an assembly, operating system, or the common language runtime. This class cannot be inherited.
WeakReference Represents a weak reference, which references an object while still allowing that object to be reclaimed by garbage collection.
WeakReference<(Of <(T>)>) Represents a typed weak reference, which references an object while still allowing that object to be reclaimed by garbage collection.
WindowsRuntimeSystemExtensions Provides extension methods for converting between tasks and Windows Runtime asynchronous actions and operations.

Structures

Structure Description
ArraySegment<(Of <(T>)>) Delimits a section of a one-dimensional array.
Boolean Represents a Boolean value.
Byte Represents an 8-bit unsigned integer.
Char Represents a Unicode character.
DateTime Represents an instant in time, typically expressed as a date and time of day.
DateTimeOffset Represents a point in time, typically expressed as a date and time of day, relative to Coordinated Universal Time (UTC).
Decimal Represents a decimal number.
Double Represents a double-precision floating-point number.
Guid Represents a globally unique identifier (GUID).
Int16 Represents a 16-bit signed integer.
Int32 Represents a 32-bit signed integer.
Int64 Represents a 64-bit signed integer.
IntPtr A platform-specific type that is used to represent a pointer or a handle.
Nullable<(Of <(T>)>) Represents an object whose underlying type is a value type that can also be assigned nullNothingnullptra null reference (Nothing in Visual Basic) like a reference type.
RuntimeArgumentHandle References a variable-length argument list.
RuntimeFieldHandle Represents a field using an internal metadata token.
RuntimeMethodHandle RuntimeMethodHandle is a handle to the internal metadata representation of a method.
RuntimeTypeHandle Represents a type using an internal metadata token.
SByte Represents an 8-bit signed integer.
Single Represents a single-precision floating-point number.
TimeSpan Represents a time interval.
UInt16 Represents a 16-bit unsigned integer.
UInt32 Represents a 32-bit unsigned integer.
UInt64 Represents a 64-bit unsigned integer.
UIntPtr A platform-specific type that is used to represent a pointer or a handle.
Void Specifies a return value type for a method that does not return a value.

Interfaces

Interface Description
IAsyncResult Represents the status of an asynchronous operation.
IComparable Defines a generalized type-specific comparison method that a value type or class implements to order or sort its instances.
IComparable<(Of <(T>)>) Defines a generalized comparison method that a value type or class implements to create a type-specific comparison method for ordering instances.
IConvertible Defines methods that convert the value of the implementing reference or value type to a common language runtime type that has an equivalent value.
ICustomFormatter Defines a method that supports custom, user-defined formatting of the value of an object.
IDisposable Defines a method to release allocated resources.
IEquatable<(Of <(T>)>) Defines a generalized method that a value type or class implements to create a type-specific method for determining equality of instances.
IFormatProvider Provides a mechanism for retrieving an object to control formatting.
IFormattable Provides functionality to format the value of an object into a string representation.
IObservable<(Of <(T>)>) Defines a provider for push-based notification.
IObserver<(Of <(T>)>) Provides a mechanism for receiving push-based notifications.
IProgress<(Of <(T>)>) Defines a provider for progress updates.
IServiceProvider Defines a mechanism for retrieving a service object; that is, an object that provides custom support to other objects.

Delegates

Delegate Description
Action Encapsulates a method that takes no parameters and does not return a value.
Action<(Of <(T>)>) Encapsulates a method that takes a single parameter and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>)>) Encapsulates a method that has 10 parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>)>) Encapsulates a method that has 11 parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>)>) Encapsulates a method that has 12 parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>)>) Encapsulates a method that has 13 parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>)>) Encapsulates a method that has 14 parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>)>) Encapsulates a method that has 15 parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>)>) Encapsulates a method that has 16 parameters and does not return a value.
Action<(Of <(T1, T2>)>) Encapsulates a method that has two parameters and does not return a value.
Action<(Of <(T1, T2, T3>)>) Encapsulates a method that takes three parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4>)>) Encapsulates a method that has four parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5>)>) Encapsulates a method that has five parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6>)>) Encapsulates a method that has six parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7>)>) Encapsulates a method that has seven parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8>)>) Encapsulates a method that has eight parameters and does not return a value.
Action<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9>)>) Encapsulates a method that has nine parameters and does not return a value.
AsyncCallback References a method to be called when a corresponding asynchronous operation is completed.
Comparison<(Of <(T>)>) Represents the method that compares two objects of the same type.
Converter<(Of <(TInput, TOutput>)>) Represents a method that converts an object from one type to another type.
EventHandler Represents the method that will handle an event that has no event data.
EventHandler<(Of <(TEventArgs>)>) Represents the method that will handle an event.
Func<(Of <(TResult>)>) Encapsulates a method that has no parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>)>) Encapsulates a method that has nine parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>)>) Encapsulates a method that has 10 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult>)>) Encapsulates a method that has 11 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult>)>) Encapsulates a method that has 12 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult>)>) Encapsulates a method that has 13 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult>)>) Encapsulates a method that has 14 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult>)>) Encapsulates a method that has 15 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, TResult>)>) Encapsulates a method that has 16 parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T, TResult>)>) Encapsulates a method that has one parameter and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, TResult>)>) Encapsulates a method that has two parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, TResult>)>) Encapsulates a method that has three parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, TResult>)>) Encapsulates a method that has four parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, TResult>)>) Encapsulates a method that has five parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, TResult>)>) Encapsulates a method that has six parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, TResult>)>) Encapsulates a method that has seven parameters and returns a value of the type specified by the TResult parameter.
Func<(Of <(T1, T2, T3, T4, T5, T6, T7, T8, TResult>)>) Encapsulates a method that has eight parameters and returns a value of the type specified by the TResult parameter.
Predicate<(Of <(T>)>) Represents the method that defines a set of criteria and determines whether the specified object meets those criteria.
ResolveEventHandler Represents the method that handles the event that resolves assembly loads. Not supported in Windows Phone.
UnhandledExceptionEventHandler Represents the method that will handle the event raised by an exception that is not handled by the application domain.

Enumerations

Enumeration Description
AttributeTargets Specifies the application elements on which it is valid to apply an attribute.
DateTimeKind Specifies whether a DateTime object represents a local time, a Coordinated Universal Time (UTC), or is not specified as either local time or UTC.
DayOfWeek Specifies the day of the week.
Environment..::.SpecialFolder Specifies enumerated constants used to retrieve directory paths to system special folders.
GCCollectionMode Specifies the behavior for a forced garbage collection.
GenericUriParserOptions Specifies options for a UriParser.
LoaderOptimization An enumeration used to specify loader optimizations for an executable.
MidpointRounding Specifies how mathematical rounding methods should process a number that is midway between two numbers.
PlatformID Identifies the operating system, or development platform, supported by an assembly.
StringComparison Specifies the culture, case, and sort rules to be used by certain overloads of the String..::.Compare and String..::.Equals methods.
StringSplitOptions Specifies whether methods that split delimited substrings include or omit empty substrings from the returned array.
TypeCode Specifies the type of an object.
UriComponents Specifies the parts of a Uri.
UriFormat Controls how URI information is escaped.
UriHostNameType Defines host name types for the Uri..::.CheckHostName method.
UriIdnScope Provides the possible values for the configuration setting Internationalized Domain Name parsing.
UriKind Defines the kinds of Uris for several Uri..::.Uri methods.