Skip to content

IWantsToRegisterStuff interface

Defined in

Namespace: ReactiveUI Assembly: ReactiveUI.Core.dll Full name: ReactiveUI.IWantsToRegisterStuff Modifiers: public abstract

Summary

Represents a class that can register services with ReactiveUI's dependency resolver.

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

Remarks

This interface is used with the ReactiveUI builder pattern to provide custom registrations. The registration methods use generic types to avoid runtime reflection, making them compatible with AOT compilation and trimming.

Usage with builder:

public class MyCustomRegistrations : IWantsToRegisterStuff
 {
 public void Register(IRegistrar registrar)
 {
 registrar.RegisterConstant<IMyService>(() => new MyService());
 registrar.RegisterLazySingleton<IMyViewModel>(() => new MyViewModel());
 }
 }
 // In your app initialization:
 RxAppBuilder.CreateReactiveUIBuilder()
 .WithCoreServices()
 .WithPlatformServices()
 .WithRegistration(new MyCustomRegistrations())
 .BuildApp();

Methods

NameSummary
RegisterRegister platform dependencies using the provided registrar. This method uses generic registration to avoid runtime Type reflection, making it compatible with AOT...