The recording of the first ever ReactiveUI virtual conference is available on our YouTube Channel.


SelectSafe<TDestination, TSource, TKey>(IObservable<IChangeSet<TSource, TKey>>, Func<TSource, TKey, TDestination>, Action<Error<TSource, TKey>>, IObservable<Unit>) Method


Projects each update item to a new form using the specified transform function, providing an error handling action to safely handle transform errors without killing the stream.
Containing Type


public static IObservable<IChangeSet<TDestination, TKey>> SelectSafe<TDestination, TSource, TKey>(this IObservable<IChangeSet<TSource, TKey>> source, Func<TSource, TKey, TDestination> transformFactory, Action<Error<TSource, TKey>> errorHandler, IObservable<Unit> forceTransform)

Type Parameters

Name Description
TDestination The type of the destination.
TSource The type of the source.
TKey The type of the key.


Name Type Description
source IObservable<IChangeSet<TSource, TKey>> The source.
transformFactory Func<TSource, TKey, TDestination> The transform factory.
errorHandler Action<Error<TSource, TKey>> Provides the option to safely handle errors without killing the stream. If not specified the stream will terminate as per rx convention.
forceTransform IObservable<Unit> Invoke to force a new transform for all items

Return Value

Type Description
IObservable<IChangeSet<TDestination, TKey>> A transformed update collection