Skip to content

,--0)} ,--0,System.Boolean)}

Reflection.TrySetValueToPropertyChain(object?, IEnumerable, TValue) method

Defined in

Type: Reflection Namespace: ReactiveUI.Reactive Assembly: ReactiveUI.Reactive.dll

Applies to

net10.0, net10.0-maccatalyst26.0, net10.0-desktop1.0, net10.0-browserwasm1.0, net10.0-tvos26.0, net10.0-windows10.0.19041, net10.0-macos26.0, net10.0-ios26.0, net10.0-android36.0, net9.0, net9.0-tvos18.0, net9.0-macos15.0, net9.0-maccatalyst18.0, net9.0-windows10.0.19041, net9.0-ios18.0, net9.0-desktop1.0, net8.0, net8.0-windows10.0.19041, net8.0-ios18.0, net8.0-maccatalyst18.0, net8.0-macos15.0, net8.0-tvos18.0, net8.0-ios17.5, net8.0-maccatalyst17.5, net8.0-macos14.5, netstandard2.1, net481, net462, net471

Overloads

  • 1. public static bool TrySetValueToPropertyChain<TValue>(object? target, IEnumerable<Expression> expressionChain, TValue value)
  • 2. public static bool TrySetValueToPropertyChain<TValue>(object? target, IEnumerable<Expression> expressionChain, TValue value, bool shouldThrow)

1. Overload

Attributes: [RequiresUnreferencedCode("Evaluates expression-based member chains via reflection; members may be trimmed.")]

public static bool TrySetValueToPropertyChain<TValue>(object? target, IEnumerable<Expression> expressionChain, TValue value)

View source

Summary: Based on a list of expressions, attempts to set the value of the last property in the chain, throwing on missing members.

Type parameters

NameDescription
TValueThe type of the end value being set.

Parameters

NameTypeDescription
targetobject?The object that starts the property chain.
expressionChainIEnumerableA sequence of expressions that point to properties/fields.
valueTValueThe value to set on the last property in the chain.

Returns: bool -- True if the value was successfully set; otherwise false.

Exceptions

TypeCondition
System.InvalidOperationExceptionThrown when expressionChain is empty.
System.ArgumentNullExceptionThrown when target is null and traversal is required.
System.ArgumentExceptionThrown when a required member is not settable.

2. Overload

Attributes: [RequiresUnreferencedCode("Evaluates expression-based member chains via reflection; members may be trimmed.")]

public static bool TrySetValueToPropertyChain<TValue>(object? target, IEnumerable<Expression> expressionChain, TValue value, bool shouldThrow)

View source

Summary: Based on a list of expressions, attempts to set the value of the last property in the chain.

Type parameters

NameDescription
TValueThe type of the end value being set.

Parameters

NameTypeDescription
targetobject?The object that starts the property chain.
expressionChainIEnumerableA sequence of expressions that point to properties/fields.
valueTValueThe value to set on the last property in the chain.
shouldThrowboolIf true, throw when reflection members are missing; otherwise fail softly.

Returns: bool -- True if the value was successfully set; otherwise false.

Remarks

        Trimming note: this method may traverse arbitrary member chains represented by expressions; it is not possible
        to express a complete trimming contract locally.
        

Exceptions

TypeCondition
System.InvalidOperationExceptionThrown when expressionChain is empty.
System.ArgumentNullExceptionThrown when target is null and traversal is required.
System.ArgumentExceptionThrown when shouldThrow is true and a required member is not settable.