diff --git a/src/StrawberryShake/Client/src/Razor/UseQuery.cs b/src/StrawberryShake/Client/src/Razor/UseQuery.cs index 94c069cb8f2..d85aa57adc1 100644 --- a/src/StrawberryShake/Client/src/Razor/UseQuery.cs +++ b/src/StrawberryShake/Client/src/Razor/UseQuery.cs @@ -21,6 +21,8 @@ public abstract class UseQuery : ComponentBase, IDisposable where TResu [Parameter] public RenderFragment? LoadingContent { get; set; } + [Parameter] public EventCallback> OnOperationResult { get; set; } + protected void Subscribe(IObservable> observable) { _subscription?.Dispose(); @@ -34,6 +36,7 @@ protected void Subscribe(IObservable> observable) _isSuccessResult = operationResult.IsSuccessResult(); _isInitializing = false; InvokeAsync(StateHasChanged); + OnOperationResult.InvokeAsync(operationResult); }); } diff --git a/src/StrawberryShake/Client/src/Razor/UseSubscription.cs b/src/StrawberryShake/Client/src/Razor/UseSubscription.cs index 8a72817cc81..f2d82205726 100644 --- a/src/StrawberryShake/Client/src/Razor/UseSubscription.cs +++ b/src/StrawberryShake/Client/src/Razor/UseSubscription.cs @@ -19,6 +19,8 @@ public abstract class UseSubscription : ComponentBase, IDisposable wher [Parameter] public RenderFragment? LoadingContent { get; set; } + [Parameter] public EventCallback> OnOperationResult { get; set; } + protected void Subscribe(IObservable> observable) { _subscription?.Dispose(); @@ -32,6 +34,7 @@ protected void Subscribe(IObservable> observable) _isSuccessResult = operationResult.IsSuccessResult(); _isInitializing = false; InvokeAsync(StateHasChanged); + OnOperationResult.InvokeAsync(operationResult); }); }