public void UnWatchVariable(ConfigurationItemModel item) { if (Watched.Any(x => x.Parent == item.Parent && x.Connector == item.Connector)) { Watched.Remove(item); } OnPropertyChanged("Watched"); }
public async Task SetValue(string applicationName, ConfigurationItemModel value) { var jsonStringValue = JsonConvert.SerializeObject(value); await Database.HashSetAsync(applicationName, value.Name, jsonStringValue); await _publisher.PublishAsync(GetChannelName(applicationName), jsonStringValue); await Database.HashSetAsync(applicationName, value.Name, jsonStringValue); await Database.ListLeftPushAsync("configs", applicationName); }
public void SetValue_Test() { var configurationManager = new ConfigurationManager(connectionString); var ConfigurationItemModel = new ConfigurationItemModel { IsActive = true, Name = "SiteName", Type = "String", Value = "Boyner.com.tr" }; var result = Record.ExceptionAsync(async() => await configurationManager.SetValue(applicationName, ConfigurationItemModel)); }
public static IConfigurationItemViewModel GetConfigurationItemViewModel(ConfigurationItemModel model) { Type genericViewModel; if (configurationItemViewModelDictionary.ContainsKey(model.GetType())) { genericViewModel = configurationItemViewModelDictionary[model.GetType()]; } else { // var modelInterfaces = model.GetType().GetInterfaces(); // var viewModels = GetDerivedForInterfaceType(typeof(IConfigurationItemViewModel)); // var genericViewModels = viewModels.Where(i => i.IsGenericType); // genericViewModel = genericViewModels.Where(i => modelInterfaces.Any(j => i.GetGenericTypeDefinition() == j)).FirstOrDefault(); //#if DEBUG // if (viewModels.Count() != genericViewModels.Count()) // { // var classes = string.Join(", ", viewModels.Select(i => i.Name)); // throw new Exception($"One of thses classes is derive from IConfigurationItemViewModel and is not Generic: {classes}"); // } // if (genericViewModel == null) // throw new Exception($"Did not find a ConfigurationItemViewModel generic class with generic type definition {model.GetType().Name}"); //#endif if (model is IDisplayOnlyConfigurationItemModel) { genericViewModel = typeof(DisplayOnlyConfigurationItemViewModel); } else if (model is IComboBoxConfigurationItemModel) { genericViewModel = typeof(ComboBoxConfigurationItemViewModel); } else { throw new Exception($"Did not find a ConfigurationItemViewModel generic class for generic type definition {model.GetType().Name}"); } } var viewModel = (IConfigurationItemViewModel)Activator.CreateInstance(genericViewModel); MethodInfo setModelMethod = genericViewModel.GetMethod("SetModel"); setModelMethod.Invoke(viewModel, new[] { model }); return(viewModel); }