@page "/data" @using Microsoft.AspNetCore.Components.QuickGrid @using SchemaEditor.Services @inject GarnetClientService GarnetClient @rendermode InteractiveServer

Data Explorer (Garnet)

Query Store
Key Pattern
Using SCAN/KEYS command. Use specific patterns for performance.
@if (errorMsg != null) {
@errorMsg
} @if (searchResults != null) {
Results
@searchResults.Count keys found
}
@code { private string searchPattern = "*"; private List>? searchResults; private string? errorMsg; private PaginationState pagination = new PaginationState { ItemsPerPage = 20 }; private async Task SearchKeys() { errorMsg = null; searchResults = null; try { var keys = await GarnetClient.SearchKeysAsync(searchPattern); var list = new List>(); // Fetch values (Bulk get would be better but keeping simple for now) // Limit to 1000 for safety in PoC UI foreach (var k in keys.Take(1000)) { var val = await GarnetClient.GetValueAsync(k); list.Add(new KeyValuePair(k, val)); } searchResults = list; } catch (Exception ex) { errorMsg = $"Query failed: {ex.Message}"; } } }