("DisableReconnectionCache"))
+ {
+ // This disables the reconnection cache, which forces the server to persist the circuit state.
+ options.DisconnectedCircuitMaxRetained = 0;
+ }
+ })
.AddAuthenticationStateSerialization(options =>
{
bool.TryParse(Configuration["SerializeAllClaims"], out var serializeAllClaims);
diff --git a/src/Components/test/testassets/Components.TestServer/RazorComponents/Pages/PersistentState/PersistentStateDisconnection.razor b/src/Components/test/testassets/Components.TestServer/RazorComponents/Pages/PersistentState/PersistentStateDisconnection.razor
new file mode 100644
index 000000000000..cef4f9a60fec
--- /dev/null
+++ b/src/Components/test/testassets/Components.TestServer/RazorComponents/Pages/PersistentState/PersistentStateDisconnection.razor
@@ -0,0 +1,8 @@
+@page "/persistent-state/disconnection"
+@rendermode RenderMode.InteractiveServer
+
+
+ Validates state persistence across disconnections
+
+
+
diff --git a/src/Components/test/testassets/Components.TestServer/RazorComponents/Root.razor b/src/Components/test/testassets/Components.TestServer/RazorComponents/Root.razor
index a644869eb317..4e499a486453 100644
--- a/src/Components/test/testassets/Components.TestServer/RazorComponents/Root.razor
+++ b/src/Components/test/testassets/Components.TestServer/RazorComponents/Root.razor
@@ -14,8 +14,32 @@