Table of contents
Collapse the table of content
Expand the table of content

FSharpType.GetExceptionFields Method (F#)

Den Delimarsky|Last Updated: 8/18/2017
1 Contributor

Reads all the fields from an F# exception declaration, in declaration order.

Namespace/Module Path: Microsoft.FSharp.Reflection

Assembly: FSharp.Core (in FSharp.Core.dll)


// Signature:
static member GetExceptionFields : Type * ?BindingFlags -> PropertyInfo []
static member GetExceptionFields : Type * ?bool -> PropertyInfo []

// Usage:
FSharpType.GetExceptionFields (exceptionType)
FSharpType.GetExceptionFields (exceptionType, bindingFlags = bindingFlags)

open FSharpReflectionExtensions
FSharpType.GetExceptionFields (exceptionType, allowAccessToPrivateRepresentation = false)


exceptionType Type: System.Type

The exception type to read.

bindingFlags Type: System.Reflection.BindingFlags

Optional binding flags.

allowAccessToPrivateRepresentation Type: bool

Optional flag that denotes accessibility of the private representation.


ArgumentExceptionThrown if the given type is not an exception.

Return Value

An array containing the System.Reflection.PropertyInfo of each field in the exception.


Assumes exceptionType is an exception representation type. If not, System.ArgumentException is raised.


Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Reflection.FSharpType Class (F#)

Microsoft.FSharp.Reflection Namespace (F#)

© 2020 Microsoft