Expression::PropertyOrField Method (Expression^, String^)
Creates a MemberExpression that represents accessing a property or field.
Assembly: System.Core (in System.Core.dll)
public: static MemberExpression^ PropertyOrField( Expression^ expression, String^ propertyOrFieldName )
Parameters
- expression
-
Type:
System.Linq.Expressions::Expression^
An Expression whose Type contains a property or field named propertyOrFieldName. This can be null for static members.
- propertyOrFieldName
-
Type:
System::String^
The name of a property or field to be accessed.
Return Value
Type: System.Linq.Expressions::MemberExpression^A MemberExpression that has the NodeType property equal to MemberAccess, the Expression property set to expression, and the Member property set to the PropertyInfo or FieldInfo that represents the property or field denoted by propertyOrFieldName.
| Exception | Condition |
|---|---|
| ArgumentNullException | expression or propertyOrFieldName is null. |
| ArgumentException | No property or field named propertyOrFieldName is defined in expression.Type or its base types. |
The Type property of the resulting MemberExpression is equal to the PropertyType or FieldType properties of the PropertyInfo or FieldInfo, respectively, that represents the property or field denoted by propertyOrFieldName.
This method searches expression.Type and its base types for a property or field that has the name propertyOrFieldName. Public properties and fields are given preference over non-public properties and fields. Also, properties are given preference over fields. If a matching property or field is found, this method passes expression and the PropertyInfo or FieldInfo that represents that property or field to Property or Field, respectively.
Available since 8
.NET Framework
Available since 3.5
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1