public IActionResult Patch(string id /*signalR connection id*/, [FromBody] MonitorSettingsPutModel model) { _logger.LogDebug(model.ToString()); if (model.Level.StartsWith('-')) { var level = model.Level[1..];
public IActionResult Patch(string id /*signalR connection id*/, [FromBody] MonitorSettingsPutModel model) { Logger.LogDebug(model.ToString()); if (MemoryCache.TryGetValue(id, out MonitorSettings settings)) { if (settings.AppId == 0) { settings.AppId = model.AppId; } MemoryCache.Remove(id); } else { settings = new MonitorSettings { AppId = model.AppId }; } if (model.Level.StartsWith('-')) { var level = model.Level.Substring(1); if (settings.Levels.Contains(level)) { settings.Levels.Remove(level); } } else { if (!settings.Levels.Contains(model.Level)) { settings.Levels.Add(model.Level); } } MemoryCache.Set(id, settings); return(NoContent()); }