コード例 #1
0
        public static void Put(SysInfoDM objEmployee, string url)
        {
            var result  = "";
            var json    = JsonConvert.SerializeObject(objEmployee);
            var cookies = new CookieContainer();

            ServicePointManager.Expect100Continue = false;
            var request = (HttpWebRequest)WebRequest.Create(url);

            request.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;
            request.CookieContainer = cookies;
            request.Method          = "PUT";
            request.ContentType     = "application/json";
            request.UserAgent       = @"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4";

            using (var streamWriter = new StreamWriter(request.GetRequestStream()))
            {
                streamWriter.Write(json);
            }
            using (var responseStream = request.GetResponse().GetResponseStream())
                using (var reader = new System.IO.StreamReader(responseStream, Encoding.GetEncoding("UTF-8")))
                {
                    result = reader.ReadToEnd();
                }
        }
コード例 #2
0
        public static SysInfo DataModelToEFModel(SysInfoDM sysInfoDM)
        {
            var sysInfo = new SysInfo()
            {
                Id              = Guid.NewGuid(),
                PCName          = sysInfoDM.PCName,
                Manufacturer    = sysInfoDM.Manufacturer,
                RAMLoad         = sysInfoDM.RAMLoad,
                DateTimeLog     = sysInfoDM.DateTimeLog,
                CPULogs         = new List <CpuLog>(),
                LoggedUsersLogs = new List <LoggedUsersLog>()
            };

            foreach (var cpuLog in sysInfoDM.CPULogs)
            {
                sysInfo.CPULogs.Add(new CpuLog()
                {
                    Id         = Guid.NewGuid(),
                    Name       = cpuLog.Name,
                    Percentage = cpuLog.Percentage,
                    SysInfoId  = sysInfo.Id,
                    SysInfo    = sysInfo
                });
            }

            foreach (var loggedUsersLog in sysInfoDM.LoggedUsersLogs)
            {
                sysInfo.LoggedUsersLogs.Add(new LoggedUsersLog()
                {
                    Id        = Guid.NewGuid(),
                    Name      = loggedUsersLog.Name,
                    SysInfoId = sysInfo.Id,
                    SysInfo   = sysInfo
                });
            }

            return(sysInfo);
        }
コード例 #3
0
        public static void LogSysInfo()
        {
            try
            {
                var cpuLoadList = InfoHelper.GetCPULoad();
                var loogedUsers = InfoHelper.GetLoggedUsers();
                var sysInfoDM   = new SysInfoDM()
                {
                    Id           = Guid.NewGuid(),
                    Manufacturer = InfoHelper.GetManufacturer(),
                    PCName       = InfoHelper.GetPCName(),
                    RAMLoad      = InfoHelper.GetRAMLoad(),
                    DateTimeLog  = DateTime.Now
                };


                sysInfoDM.CPULogs = cpuLoadList.Select(item => new CpuLogDM()
                {
                    Id = Guid.NewGuid(), Name = item.Item1, Percentage = item.Item2
                }).ToList();

                sysInfoDM.LoggedUsersLogs = loogedUsers
                                            .Select(item => new LoggedUsersLogDM()
                {
                    Id = Guid.NewGuid(), Name = item
                }).ToList();


                WebHelper.Put(sysInfoDM, "https://localhost:44377/api/SysInfo");
                Log($"SysInfo is sent!");
            }
            catch (Exception ex)
            {
                Log($"ERROR LogSysInfo():\r\n{ex.Message}");
            }
        }
コード例 #4
0
 public void Put([FromBody] SysInfoDM sysInfoDM)
 {
     var res = DbCommands.PutSysInfo(WorkHelper.DataModelToEFModel(sysInfoDM));
 }