コード例 #1
0
ファイル: Monitor.xaml.cs プロジェクト: MatteoCultrera/Esp2.1
        private void changeData_Searching(int x, int y)
        {
            MonitorModel    mm      = (MonitorModel)this.DataContext;
            DoubleAnimation fadeOut = new DoubleAnimation()
            {
                To       = 0,
                Duration = TimeSpan.FromMilliseconds(400)
            };

            Storyboard.SetTarget(fadeOut, DevicesLB);
            Storyboard.SetTargetProperty(fadeOut, new PropertyPath(Control.OpacityProperty));
            DoubleAnimation fadeIn = new DoubleAnimation()
            {
                To       = 1,
                Duration = TimeSpan.FromMilliseconds(400)
            };

            Storyboard.SetTarget(fadeIn, DevicesLB);
            Storyboard.SetTargetProperty(fadeIn, new PropertyPath(Control.OpacityProperty));

            Storyboard fadeChange = new Storyboard();
            Storyboard changed    = new Storyboard();

            fadeChange.Children.Add(fadeOut);
            changed.Children.Add(fadeIn);

            fadeChange.Completed += (s, a) => {
                DevicesLB.ItemsSource = deviceSearched;
                devicesMatrix[deviceSearched[0].xInt][deviceSearched[0].yInt].deviceCheckbox.IsChecked = true;
                changed.Begin();
            };
            fadeChange.Begin();
        }
コード例 #2
0
        public ActionResult Index()
        {
            DataTable        daTbl        = new DataTable();
            MonitorModel     monitorModel = new MonitorModel();
            List <PostModel> postModels   = new List <PostModel>();

            using (SqlConnection sqlCon = new SqlConnection(connectionString))
            {
                string         query = "SELECT TOP 3 * FROM Tbl_Posts ORDER BY PostId desc";
                SqlDataAdapter sqlDa = new SqlDataAdapter(query, sqlCon);
                sqlDa.Fill(daTbl);

                if (daTbl.Rows.Count > 0)
                {
                    for (int i = 0; i < daTbl.Rows.Count; i++)
                    {
                        postModels.Add(new PostModel
                        {
                            PostContent = daTbl.Rows[i]["PostContent"].ToString(),
                            PostFile    = daTbl.Rows[i]["PostFile"].ToString(),
                            Date        = daTbl.Rows[i]["Date"].ToString()
                        });
                    }
                }
            }
            monitorModel.PostModels = postModels;

            return(View(monitorModel));
        }
コード例 #3
0
        public override TResponse BlockingUnaryCall <TRequest, TResponse>(TRequest request, ClientInterceptorContext <TRequest, TResponse> context, BlockingUnaryCallContinuation <TRequest, TResponse> continuation)
        {
            context = SetTraceIdHeader(context);
            var model = new MonitorModel
            {
                ClientIp       = context.Host,
                RequestUrl     = context.Method.FullName,
                RequestData    = request?.ToJson(),
                RequestHeaders = context.Options.Headers.ToDictionary(p => p.Key, p => p.Value),
                TraceId        = context.Options.Headers?.Where(p => p.Key == Consts.TraceId).FirstOrDefault()?.Value
            };

            try
            {
                var result = continuation(request, context);
                model.Status = "ok";
                return(result);
            }
            catch (Exception ex)
            {
                SetExceptionData(ex, model);
                model.Status    = "error";
                model.Exception = ex.GetFlatException();
                LoggerAccessor.Instance.OnLoggerError(ex, LogType.ClientLog);
                throw ex;
            }
            finally
            {
                model.ResponseTime = DateTime.Now;
                LoggerAccessor.Instance.OnLoggerMonitor(model.ToJson(), LogType.ClientLog);
            }
        }
コード例 #4
0
        public int Deletar(MonitorModel obj)
        {
            SqlConnection connection = null;

            try
            {
                using (connection = new SqlConnection(_connectionString))
                {
                    string query = $"DELETE FROM [dbo].[Monitor]" +
                                   $"                WHERE [Id] = {obj.Id}";

                    connection.Open();
                    SqlCommand command = new SqlCommand(null, connection)
                    {
                        CommandText = query,
                        CommandType = CommandType.Text
                    };

                    command.ExecuteScalar();
                    return(0);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (connection?.State == ConnectionState.Open)
                {
                    connection.Close();
                }
            }
        }
コード例 #5
0
ファイル: Monitors.cs プロジェクト: rbooth84/Reddit.NET
        internal bool Monitor(string key, Thread thread, string subKey, out Thread newThread)
        {
            newThread = null;
            if (IsMonitored(key, subKey))
            {
                // Stop monitoring.  --Kris
                TerminateThread();

                MonitorModel.RemoveMonitoringKey(key, subKey, ref Monitoring);
                WaitOrDie(key);

                Threads.Remove(key);

                return(false);
            }
            else
            {
                // Start monitoring.  --Kris
                MonitorModel.AddMonitoringKey(key, subKey, ref Monitoring);

                newThread = thread;

                return(true);
            }
        }
コード例 #6
0
        public MonitorModel Post(MonitorModel monitor) // List<MonitorTitulo> titulos
        {
            Token token = (Token)Request.Properties["token"];

            monitor.Monitor.IdEscuela = token.IdEscuela;
            return(monitorService.EditarMonitor(monitor));
        }
コード例 #7
0
        public ActionResult Monitors(MonitorModel model)
        {
            int pageIndex = model.Page ?? 1;

            using (EquipmentsEntities data = new EquipmentsEntities())
            {
                model.MonitorSearch = (from c in data.TB_Monitors.Where(p => p.KayitDurum == "Active" && (String.IsNullOrEmpty(model.Users) || p.Users.Contains(model.Users)) &&
                                                                        (String.IsNullOrEmpty(model.SerialNumber) || p.SerialNumber.Contains(model.SerialNumber))).OrderByDescending(p => p.ID)
                                       select new MonitorListModel
                {
                    BasicFeatures = c.BrandFeatures,
                    Brand = c.Brand,
                    Demirbas = c.Demirbas,
                    InvoiceNumber = c.InvoiceNumber,
                    OldUser = c.OldUser,
                    Place = c.Place,
                    PurchaseDate = c.PurchaseDate,
                    SerialNumber = c.SerialNumber,
                    Status = c.Status,
                    UserCode = c.UserCode,
                    Users = c.Users
                }).ToPagedList(pageIndex, 15);
                if (Request.IsAjaxRequest())
                {
                    return(PartialView("_Monitor", model));
                }
                else
                {
                    return(View(model));
                }
            }
        }
コード例 #8
0
ファイル: Monitor.xaml.cs プロジェクト: MatteoCultrera/Esp2.1
        private void mac_LostFocus(object sender, RoutedEventArgs e)
        {
            MonitorModel mm    = (MonitorModel)this.DataContext;
            TextBox      box   = sender as TextBox;
            Regex        regex = new Regex("^[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}$");
            Device       searched;

            searching = true;


            if (regex.IsMatch(box.Text))
            {
                searched = mm.findDevice(box.Text);
                if (searched == null)
                {
                    showErrorMessage("MAC not Found");
                    searching = false;
                }
                else
                {
                    deviceSearched.Add(searched);
                    shrinkListBox();
                    tbButton.Content = cancelMonitor;
                }
            }
            else
            {
                showErrorMessage("Wrong MAC");
                searching = false;
            }
        }
コード例 #9
0
        public MainWindow()
        {
            InitializeComponent();
            setup      = new SetupModel();
            monitor    = new MonitorModel();
            statistics = new StatisticsModel();

            listItems = new List <menuItem>();
            listItems.Add(new menuItem()
            {
                enabled = true, text = "Border Setup"
            });
            listItems.Add(new menuItem()
            {
                enabled = false, text = "Room Monitor"
            });
            listItems.Add(new menuItem()
            {
                enabled = false, text = "Statistics"
            });
            listItems.Add(new menuItem()
            {
                enabled = true, text = "Quit App"
            });


            lbMenu.ItemsSource = listItems;
        }
コード例 #10
0
        private void MonitorPageThread(string key, int startDelayMs = 0, int?monitoringDelayMs = null)
        {
            if (startDelayMs > 0)
            {
                Thread.Sleep(startDelayMs);
            }

            monitoringDelayMs = (monitoringDelayMs.HasValue ? monitoringDelayMs : Monitoring.Count() * MonitoringWaitDelayMS);

            while (!Terminate &&
                   Monitoring.Get(key).Contains(Name))
            {
                if (MonitoringExpiration.HasValue &&
                    DateTime.Now > MonitoringExpiration.Value)
                {
                    MonitorModel.RemoveMonitoringKey(key, Name, ref Monitoring);
                    Threads.Remove(key);

                    break;
                }

                while (!IsScheduled())
                {
                    if (Terminate)
                    {
                        break;
                    }

                    Thread.Sleep(15000);
                }

                if (Terminate)
                {
                    break;
                }

                WikiPage newPage;
                try
                {
                    newPage = About();

                    if (!newPage.RevisionDate.Equals(RevisionDate))
                    {
                        // Event handler to alert the calling app that the list has changed.  --Kris
                        WikiPageUpdateEventArgs args = new WikiPageUpdateEventArgs
                        {
                            NewPage = newPage,
                            OldPage = this
                        };
                        OnPagesUpdated(args);
                    }
                }
                catch (Exception) when(!BreakOnFailure)
                {
                }

                Wait(monitoringDelayMs.Value);
            }
        }
コード例 #11
0
 private void _listView_ItemSelected(object sender, SelectedItemChangedEventArgs e)
 {
     _monitor           = (MonitorModel)e.SelectedItem;
     _idEntry.Text      = _monitor.Id.ToString();
     _commentEntry.Text = _monitor.Comments;
     _date  = _monitor.Date;
     _isNew = _monitor.isNew;
 }
コード例 #12
0
        public MonitorModel Post(MonitorModel monitor) // List<MonitorTitulo> titulos
        {
            var   body  = Request.Body;
            Token token = new Token();

            monitor.Monitor.IdEscuela = token.IdEscuela;
            return(monitorService.EditarMonitor(monitor));
        }
コード例 #13
0
        public MonitorModel Save(MonitorModel monitorModel)
        {
            if (monitorModel.Equals(null))
            {
                return(null);
            }

            return(repository.Save(monitorModel));
        }
コード例 #14
0
        public List <MonitorModel> Listar(MonitorModel obj)
        {
            List <MonitorModel> lista      = new List <MonitorModel>();
            SqlConnection       connection = null;

            try
            {
                using (connection = new SqlConnection(_connectionString))
                {
                    connection.Open();
                    string query = $"SELECT * FROM Monitor WHERE 1 = 1";

                    if (obj != null)
                    {
                        if (!string.IsNullOrWhiteSpace(obj.Patrimonio))
                        {
                            query += $" AND Patrimonio LIKE '{obj.Patrimonio}%'";
                        }
                    }

                    SqlCommand command = new SqlCommand(query, connection);
                    var        reader  = command.ExecuteReader();

                    while (reader.Read())
                    {
                        lista.Add(new MonitorModel
                        {
                            Id         = reader.GetInt32(0),
                            Patrimonio = SafeGetString(reader, 1),
                            Marca      = SafeGetString(reader, 2),
                            Modelo     = SafeGetString(reader, 3),
                            Nserie     = SafeGetString(reader, 4),
                            Status     = SafeGetString(reader, 5),
                            Estado     = SafeGetString(reader, 6),
                            Antcolab   = SafeGetString(reader, 7),
                            Atualcolab = SafeGetString(reader, 8),
                            Dtacompra  = SafeGetString(reader, 9),
                            Obs        = SafeGetString(reader, 10)
                        });
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (connection?.State == ConnectionState.Open)
                {
                    connection.Close();
                }
            }

            return(lista);
        }
コード例 #15
0
        public int Editar(MonitorModel obj)
        {
            SqlConnection connection = null;

            try
            {
                using (connection = new SqlConnection(_connectionString))
                {
                    string query = $"UPDATE [dbo].[Monitor]" +
                                   $"                  SET [Patrimonio] = @p1" +
                                   $"                     ,[Marca] = @p2" +
                                   $"                     ,[Modelo] = @p3" +
                                   $"                     ,[Nserie] = @p4" +
                                   $"                     ,[Status] = @p5" +
                                   $"                     ,[Estado] = @p6" +
                                   $"                     ,[Antcolab] = @p7" +
                                   $"                     ,[Atualcolab] = @p8" +
                                   $"                     ,[Dtacompra] = @p9" +
                                   $"                     ,[Obs] = @p10" +
                                   $"               WHERE  [Id] = @p11";

                    connection.Open();
                    SqlCommand command = new SqlCommand(null, connection)
                    {
                        CommandText = query,
                        CommandType = CommandType.Text
                    };

                    FillParameter(command, "p1", obj.Patrimonio);
                    FillParameter(command, "p2", obj.Marca);
                    FillParameter(command, "p3", obj.Modelo);
                    FillParameter(command, "p4", obj.Nserie);
                    FillParameter(command, "p5", obj.Status);
                    FillParameter(command, "p6", obj.Estado);
                    FillParameter(command, "p7", obj.Antcolab);
                    FillParameter(command, "p8", obj.Atualcolab);
                    FillParameter(command, "p9", obj.Dtacompra);
                    FillParameter(command, "p10", obj.Obs);
                    FillParameter(command, "p11", obj.Id);

                    command.ExecuteScalar();
                    return(0);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (connection?.State == ConnectionState.Open)
                {
                    connection.Close();
                }
            }
        }
コード例 #16
0
        public MonitorModel EditarMonitor(MonitorModel monitor)
        {
            if (monitor.Operacion == "Crear")
            {
                monitor.Usuario.IdEscuela = monitor.Monitor.IdEscuela;
                monitor.Usuario.FechaCrea = monitor.Monitor.FechaCrea = DateTime.Now;
                monitor.Usuario           = db.Usuario.Add(monitor.Usuario);
                db.SaveChanges();

                monitor.Monitor.IdUsuario = monitor.Usuario.Id;
                db.Monitor.Add(monitor.Monitor);
                db.SaveChanges();

                for (var i = 0; i < monitor.Titulos.Count; i++)
                {
                    monitor.Titulos[i].IdMonitor = monitor.Monitor.Id;
                }
                db.MonitorTitulo.AddRange(monitor.Titulos);
                db.SaveChanges();
                return(monitor);
            }
            if (monitor.Operacion == "Monitor")
            {
                Monitor auxM = db.Monitor.Find(monitor.Monitor.Id);
                auxM.Nombre          = monitor.Monitor.Nombre;
                auxM.Telefono        = monitor.Monitor.Telefono;
                auxM.FotoPerfil      = monitor.Monitor.FotoPerfil;
                auxM.Apellidos       = monitor.Monitor.Apellidos;
                auxM.FechaNacimiento = monitor.Monitor.FechaNacimiento;
                db.SaveChanges();
                db.MonitorTitulo.RemoveRange(db.MonitorTitulo.Where(x => x.IdMonitor == monitor.Monitor.Id));
                db.SaveChanges();
                for (var i = 0; i < monitor.Titulos.Count; i++)
                {
                    monitor.Titulos[i].IdMonitor = monitor.Monitor.Id;
                }
                db.MonitorTitulo.AddRange(monitor.Titulos);
                db.SaveChanges();
            }

            if (monitor.Operacion == "Estaciones")
            {
                db.MonitorEstacion.RemoveRange(db.MonitorEstacion.Where(x => x.IdMonitor == monitor.Monitor.Id));
                db.SaveChanges();
                db.MonitorEstacion.AddRange(monitor.EstacionesDisponibles);
                db.SaveChanges();
            }
            if (monitor.Operacion == "Disponibles")
            {
                db.MonitorDisponible.RemoveRange(db.MonitorDisponible.Where(x => x.IdMonitor == monitor.Monitor.Id));
                db.MonitorDisponible.AddRange(monitor.FechasDisponibles);
                db.SaveChanges();
            }

            return(monitor);
        }
コード例 #17
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <remarks>
        /// モデルの初期化と、タイマの初期化を行う
        /// </remarks>
        /// <param name="driver"></param>
        public MonitorViewModel(CommonDriver.Model.IDriverModel driver)
        {
            _model = Model.MonitorModel.Instance;
            _model.PropertyChanged    += ModelPropertyChanged;
            _database.PropertyChanged += DataBasePropertyChanged;

            _dispatcherTimer          = new DispatcherTimer(DispatcherPriority.Normal);
            _dispatcherTimer.Interval = new TimeSpan(0, 0, 5);
            _dispatcherTimer.Tick    += new EventHandler(DispatcherTimer_Tick);
        }
コード例 #18
0
//        [Authorize]
        public void Update(MonitorModel model, string serial)
        {
            //var user = Authentication.User.Identity;
            string name = Context.User.Identity.Name;

            ////Clients.All.Update(model);
            model.LastUpdatedBy = Context.ConnectionId;
            // Update the shape model within our broadcaster
            //Clients.AllExcept(model.LastUpdatedBy).updateMonitor(model);
            Clients.Group(serial).updateMonitor(model);
        }
コード例 #19
0
        public override async Task <TResponse> UnaryServerHandler <TRequest, TResponse>(TRequest request,
                                                                                        ServerCallContext context, UnaryServerMethod <TRequest, TResponse> continuation)
        {
            var trace = context.RequestHeaders.FirstOrDefault(q => q.Key == Consts.TraceId);

            if (trace == null)
            {
                trace = new Metadata.Entry(Consts.TraceId, Guid.NewGuid().ToString());
                context.RequestHeaders.Add(trace);
            }
            var model = new MonitorModel
            {
                ClientIp    = context.Peer,
                RequestUrl  = context.Method,
                RequestData = request?.ToJson(),
                TraceId     = trace.Value
            };

            try
            {
                var result = await continuation(request, context);

                model.Status = "ok";

                model.ResponseData = MonitorManager.Instance.SaveResponseMethodEnable(context.Method) ? result?.ToJson() : Consts.NotResponseMsg;

                return(result);
            }
            catch (Exception ex)
            {
                if (ex is AggregateException aex)
                {
                    foreach (var e in aex.Flatten().InnerExceptions)
                    {
                        model.Exception += e?.ToString() + Environment.NewLine;
                    }
                }
                else
                {
                    model.Exception = ex?.ToString();
                }

                model.Status = "error";
                LoggerAccessor.Instance.LoggerError?.Invoke(new Exception(model.Exception));
                throw CommonError.BuildRpcException(ex);
            }
            finally
            {
                model.ResponseTime = DateTime.Now;
                LoggerAccessor.Instance.LoggerMonitor?.Invoke(model.ToJson());
            }
        }
コード例 #20
0
 public ActionResult Delete(int id, MonitorModel model)
 {
     try
     {
         new MonitorDao().Deletar(model);
         return(RedirectToAction("Index"));
     }
     catch (Exception ex)
     {
         ModelState.AddModelError("", ex.Message);
         return(View());
     }
 }
コード例 #21
0
        private async void _button_Clicked(object sender, EventArgs e)
        {
            var          db      = new SQLiteConnection(_dbPath);
            MonitorModel monitor = new MonitorModel()
            {
                Id       = Convert.ToInt32(_idEntry.Text),
                Comments = _commentEntry.Text,
                Date     = DateTime.Now,
                isNew    = false
            };

            db.Update(monitor);
            await Navigation.PushAsync(new MonitoringPage());
        }
コード例 #22
0
ファイル: Monitor.xaml.cs プロジェクト: MatteoCultrera/Esp2.1
        private Device searchingDevicePresent(int x, int y, Device d)
        {
            MonitorModel mm = (MonitorModel)this.DataContext;

            foreach (Device dev in mm.getAllDevices())
            {
                if (dev.mac.Equals(d.mac))
                {
                    return(dev);
                }
            }

            return(null);
        }
コード例 #23
0
        private void SetExceptionData(Exception ex, MonitorModel model)
        {
            var dataRequest = ex.Data["Request"];

            if (dataRequest != null)
            {
                model.Items.TryAdd("OriginRequest", dataRequest);
                ex.Data["Request"] = model;
            }
            else
            {
                ex.Data.Add("Request", model);
            }
        }
コード例 #24
0
 public Broadcaster()
 {
     // Save our hub context so we can easily use it
     // to send to its connected clients
     _hubContext   = GlobalHost.ConnectionManager.GetHubContext <Monitor>();
     _model        = new MonitorModel();
     _modelUpdated = false;
     // Start the broadcast loop
     //_broadcastLoop = new Timer(
     //    BroadcastShape,
     //    null,
     //    BroadcastInterval,
     //    BroadcastInterval);
 }
コード例 #25
0
        public DdcApplicationContext()
        {
            var monitorControllers = new List <IMonitorController>();

            ConfigWindow = new Form1();
            var monitorModel = new MonitorModel();

            monitorModel.BrightnessChanged  += ConfigWindow.OnMonitorBrightnessChanged;
            monitorModel.BrightnessChanged  += BrightnessChanged;
            monitorModel.DisplayListChanged += ConfigWindow.OnDisplayListChanged;
            var monitorDisplayController = new MonitorDisplayController(monitorModel);

            monitorControllers.Add(monitorDisplayController);
            monitorControllers.Add(new MonitorUserController(monitorModel));
            foreach (var controller in monitorControllers)
            {
                ConfigWindow.BrightnessChanged += controller.OnUserChangedBrightness;
                ConfigWindow.Shutdown          += controller.OnShutdown;
            }

            ConfigWindow.RefreshDisplayList += monitorDisplayController.OnRefreshDisplayList;

            var sensorModel      = new SensorModel();
            var sensorController = new SensorController(sensorModel, monitorDisplayController);

            sensorModel.SensorValueChanged += ConfigWindow.OnSensorValueChanged;
            sensorModel.DeviceListChanged  += sensorController.OnDeviceListChanged;
            ConfigWindow.Shutdown          += sensorController.OnShutdown;
            ConfigWindow.ManualModeChanged += sensorController.OnManualModeChanged;

            ToolStripItem button1 = new ToolStripMenuItem("Configuration", null, ShowConfig);
            ToolStripItem button2 = new ToolStripMenuItem("Exit", null, Exit);

            _notifyIcon.Icon = new Icon(Resources.Icon50, SystemInformation.SmallIconSize);

            var contextMenuStrip = new ContextMenuStrip();

            contextMenuStrip.Items.Add(button1);
            contextMenuStrip.Items.Add(button2);

            _notifyIcon.ContextMenuStrip = contextMenuStrip;
            _notifyIcon.Visible          = true;
            _notifyIcon.DoubleClick     += ShowConfig;


            monitorDisplayController.OnRefreshDisplayList();
            sensorController.OnDeviceListChanged();
        }
コード例 #26
0
        public IActionResult Save([FromBody] MonitorModel element)
        {
            if (element == null)
            {
                return(BadRequest());
            }

            var monitor = monitorService.Save(element);

            if (monitor == null)
            {
                return(NotFound());
            }

            return(Ok(Newtonsoft.Json.JsonConvert.SerializeObject(monitor)));
        }
コード例 #27
0
        public MonitorModel GetMonitor(int id)
        {
            MonitorModel monitor = new MonitorModel();

            monitor.Monitor = db.Monitor.Find(id);
            monitor.Usuario = db.Usuario.Find(monitor.Monitor.IdUsuario);
            // Clean
            monitor.Usuario.Password  = null;
            monitor.Usuario.Id        = 0;
            monitor.Usuario.IdEscuela = 0;

            monitor.EstacionesDisponibles = db.MonitorEstacion.Where(x => x.IdMonitor == id).ToList();
            monitor.FechasDisponibles     = db.MonitorDisponible.Where(x => x.IdMonitor == id).ToList();
            monitor.Titulos = db.MonitorTitulo.Where(x => x.IdMonitor == id).ToList();
            return(monitor);
        }
コード例 #28
0
        public MonitorModel Obter(int id)
        {
            MonitorModel  entity     = new MonitorModel();
            SqlConnection connection = null;

            try
            {
                using (connection = new SqlConnection(_connectionString))
                {
                    connection.Open();
                    string query = $"SELECT * FROM Monitor WHERE Id = {id}";

                    SqlCommand command = new SqlCommand(query, connection);
                    var        reader  = command.ExecuteReader();

                    while (reader.Read())
                    {
                        entity = new MonitorModel
                        {
                            Id         = reader.GetInt32(0),
                            Patrimonio = SafeGetString(reader, 1),
                            Marca      = SafeGetString(reader, 2),
                            Modelo     = SafeGetString(reader, 3),
                            Nserie     = SafeGetString(reader, 4),
                            Status     = SafeGetString(reader, 5),
                            Estado     = SafeGetString(reader, 6),
                            Antcolab   = SafeGetString(reader, 7),
                            Atualcolab = SafeGetString(reader, 8),
                            Dtacompra  = SafeGetString(reader, 9),
                            Obs        = SafeGetString(reader, 10)
                        };
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (connection?.State == ConnectionState.Open)
                {
                    connection.Close();
                }
            }
            return(entity);
        }
コード例 #29
0
 /// <summary>
 /// Ottiene le informazioni base sullo stato macchina:
 /// - hostname
 /// - uptime
 /// - load average
 /// - memory usage
 /// - disk usage
 /// </summary>
 public MonitorModule() : base("/monitor")
 {
     Get["/"] = x => {
         var hostName    = Application.RunningConfiguration.Host.HostName;
         var uptime      = Application.RunningConfiguration.Info.Uptime.Uptime;
         var loadAverage = Application.RunningConfiguration.Info.Uptime.LoadAverage;
         var free        = Application.RunningConfiguration.Info.Free[0];
         var memoryUsage = GetPercentage(long.Parse(free.Total), long.Parse(free.Used)).ToString();
         var diskUsage   = Application.RunningConfiguration.Info.DiskUsage.FirstOrDefault(_ => _.MountedOn == localDisk).UsePercentage;
         var model       = new MonitorModel {
             Hostname    = hostName,
             Uptime      = uptime,
             LoadAverage = loadAverage,
             MemoryUsage = memoryUsage,
             DiskUsage   = diskUsage
         };
         return(JsonConvert.SerializeObject(model));
     };
 }
コード例 #30
0
        public ActionResult Create(MonitorModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(View());
                }

                new MonitorDao().Inserir(model);

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return(View());
            }
        }