RefetchParameters<T>
Die Parameter, die ein Query<T>.Refetch überschreiben kann — nur für
diesen Aufruf.
public class RefetchParameters<T>
Die Identität der Query — Key, Fetch-Funktion, Client — kommt immer vom letzten
Execute: Sie zu ändern wäre eine neue Query, kein Refetch. Eine Eigenschaft, die
null bleibt, behält den Wert des letzten Execute, und ein späteres bloßes
Refetch() bleibt von früheren Überschreibungen unberührt.
Eigenschaften#
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
| CancellationToken | CancellationToken? | Ersetzt den Token für diesen Refetch. |
| OnSuccessAsync / OnSuccess | Func<T?, Task>? / Action<T?>? | Ersetzen die Erfolgs-Callbacks für diesen Refetch. |
| OnErrorAsync / OnError | Func<Exception, Task>? / Action<Exception>? | Ersetzen die Fehler-Callbacks für diesen Refetch. |
| OnDisplayUserErrorAsync / OnDisplayUserError | Func<DisplayUserException, Task>? / Action<DisplayUserException>? | Ersetzen die Display-User-Error-Callbacks für diesen Refetch. |
| OnSettledAsync / OnSettled | Func<T?, Task>? / Action<T?>? | Ersetzen die Settled-Callbacks für diesen Refetch. |
| StaleTime | TimeSpan? | Ersetzt die Stale-Time für diesen Refetch. Der Refetch selbst fetcht immer; das ändert nur, wie bald das frische Ergebnis wieder als stale gilt. |
| CacheTime | TimeSpan? | Ersetzt die Cache-Zeit für diesen Refetch. |
Beispiel#
await _todos.Refetch(new RefetchParameters<List<Todo>>
{
StaleTime = TimeSpan.FromMinutes(1),
OnSettled = _ => _lastRefreshed = DateTimeOffset.Now,
});