This documentation is archived and is not being maintained.
System.Linq.Expressions Namespace
Visual Studio 2008
The System.Linq.Expressions namespace contains classes, interfaces and enumerations that enable language-level code expressions to be represented as objects in the form of expression trees.
The abstract class Expression provides the root of a class hierarchy used to model expression trees.
The classes in this namespace that derive from Expression, for example MemberExpression and ParameterExpression, are used to represent nodes in an expression tree. The Expression class contains static (Shared in Visual Basic) factory methods to create expression tree nodes of the various types.
The enumeration type ExpressionType specifies the unique node types.
| Class | Description | |
|---|---|---|
![]() | BinaryExpression | Represents an expression that has a binary operator. |
![]() | ConditionalExpression | Represents an expression that has a conditional operator. |
![]() | ConstantExpression | Represents an expression that has a constant value. |
![]() | ElementInit | Represents an initializer for a single element of an IEnumerable collection. |
![]() | Expression | Provides the base class from which the classes that represent expression tree nodes are derived. It also contains static (Shared in Visual Basic) factory methods to create the various node types. This is an abstract class. |
![]() | Expression(Of TDelegate) | Represents a strongly typed lambda expression as a data structure in the form of an expression tree. This class cannot be inherited. |
![]() | InvocationExpression | Represents an expression that applies a delegate or lambda expression to a list of argument expressions. |
![]() | LambdaExpression | Describes a lambda expression. |
![]() | ListInitExpression | Represents a constructor call that has a collection initializer. |
![]() | MemberAssignment | Represents initializing a field or property of a newly created object. |
![]() | MemberBinding | Provides the base class from which the classes that represent bindings that are used to initialize members of a newly created object derive. |
![]() | MemberExpression | Represents accessing a field or property. |
![]() | MemberInitExpression | Represents calling a constructor and initializing one or more members of the new object. |
![]() | MemberListBinding | Represents initializing the elements of a collection member of a newly created object. |
![]() | MemberMemberBinding | Represents initializing members of a member of a newly created object. |
![]() | MethodCallExpression | Represents calling a method. |
![]() | NewArrayExpression | Represents creating a new array and possibly initializing the elements of the new array. |
![]() | NewExpression | Represents a constructor call. |
![]() | ParameterExpression | Represents a named parameter expression. |
![]() | TypeBinaryExpression | Represents an operation between an expression and a type. |
![]() | UnaryExpression | Represents an expression that has a unary operator. |
| Enumeration | Description | |
|---|---|---|
![]() | ExpressionType | Describes the node types for the nodes of an expression tree. |
![]() | MemberBindingType | Describes the binding types that are used in MemberInitExpression objects. |
Show:

