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

FSharpValue.MakeRecord Method (F#)

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

Creates an instance of a record type.

Namespace/Module Path: Microsoft.FSharp.Reflection

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


// Signature:
static member MakeRecord : Type * obj [] * ?BindingFlags -> obj
static member MakeRecord : Type * obj [] * ?bool -> obj

// Usage:
FSharpValue.MakeRecord (recordType, values)
FSharpValue.MakeRecord (recordType, values, bindingFlags = bindingFlags)

open FSharpReflectionExtensions
FSharpValue.MakeRecord (recordType, values, allowAccessToPrivateRepresentation = false)


recordType Type: System.Type

The type of record to make.

values Type: obj[]

The array of values to initialize the record.

bindingFlags Type: System.Reflection.BindingFlags

Optional binding flags for the record.

allowAccessToPrivateRepresentation Type: bool

Optional flag that denotes accessibility of the private representation.


ArgumentExceptionThrown if no elements are given.

Return Value

The created record.


Assumes the given input is a record type.


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.FSharpValue Class (F#)

Microsoft.FSharp.Reflection Namespace (F#)

© 2020 Microsoft