public void AddForbiddenUser(RayPort port, RayPortUser user) { JObject rootJObj = this.rootJObj; RayConfigExtension configEx = JsonConvert.DeserializeObject <RayConfigExtension>( rootJObj.ToString()); if (configEx.ForbiddenedUsersPorts == null) { configEx.ForbiddenedUsersPorts = new List <RayPort>(); } else if (!configEx.ForbiddenedUsersPorts.Contains( port, RayPortEqualityComparer.Default)) { configEx.ForbiddenedUsersPorts.Add(port); } RayPort p = configEx.ForbiddenedUsersPorts.FirstOrDefault( r => r.Port == port.Port); ((p.Settings ??= new RayPortSettings()) .Clients ??= new List <RayPortUser>()).Add(user); SaveConfigEx(configEx); }
private void SaveConfigEx(RayConfigExtension configEx) { File.WriteAllText( RayConfigExtension.RayConfigExtensionFilePath, JsonConvert.SerializeObject( configEx, RayConfigJsonSetting.JsonSerializerSettings)); }