Доработано сохранение состояния
All checks were successful
CI / build-test (push) Successful in 32s

This commit is contained in:
2025-12-05 13:45:38 +03:00
parent e6e5459280
commit 7f81ca85b8
4 changed files with 17 additions and 3 deletions

View File

@@ -42,7 +42,17 @@ public abstract class StatefullPage : Page
/// </summary>
protected async Task SaveState(PageContext ctx, CancellationToken ct)
{
foreach (var prop in GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance))
var t = GetType();
foreach (var prop in t.GetProperties(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public))
{
var attr = prop.GetCustomAttribute<StatefullAttribute>();
if (attr is null) continue;
var value = prop.GetValue(this);
await ctx.StateStorage.SetAsync(ctx.SessionKey, attr.Key, value, ct);
}
foreach (var prop in t.GetFields(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public))
{
var attr = prop.GetCustomAttribute<StatefullAttribute>();
if (attr is null) continue;