public PlcConnectionNode(ProjectViewModel project, PlcViewModel plc) { _project = project; Plc = plc; DeleteCommand = ReactiveCommand.Create(() => { project.Plcs.Remove(plc); }); }
private GroupViewModel MapFromStorage(PlcViewModel plc, Group group) { var vm = _groupViewModelFactory.Invoke(plc, group.Name); vm.SubGroups.AddRange(group.SubGroups.Select(g => MapFromStorage(plc, g))); vm.Variables.AddRange(group.Variables.Select(v => MapFromStorage(plc.Plc, v))); return(vm); }
// Function called from View for each Plc public async Task <IViewComponentResult> InvokeAsync(string numePlc) { PlcViewModel plcViewModel = GetPlcViewModelByName(numePlc); // Plc View Model by Plc name ViewData["Nume"] = numePlc; ViewData["chartId"] = "chartId" + numePlc; ViewData["chartData"] = JsonConvert.SerializeObject(plcViewModel.ChartDefectsInPercent); // Serialize ChartData to pass it in JS variable ViewData["btnShowChart"] = "btn" + numePlc; return(View("Default", plcViewModel)); // Pass Plc View model to view }