コード例 #1
0
        public async Task <IHttpActionResult> GetPc(int id)
        {
            PcLoadInfo pli = await db.PcLoadInfoes.FindAsync(id);

            if (pli == null)
            {
                return(NotFound()); //IDK
            }

            PcLoadInfoM ret = (PcLoadInfoM)pli;


            return(Ok(ret));
        }
コード例 #2
0
        public async Task <IHttpActionResult> PutPcLoadInfo(int id, PcLoadInfoM pcLoadInfo)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            //if (id != pcLoadInfo.PcID)
            //{
            //    return BadRequest();
            //}

            List <PcLoadInfo> pci = db.PcLoadInfoes.Where(x => x.PcID == id).ToList();

            if (pci.Count > 0)
            {
                pci[0].CpuLoad = pcLoadInfo.CpuLoad;

                string clbc = "";
                for (int i = 0; i < pcLoadInfo.CpuLoadByCore.Count; i++)
                {
                    clbc += pcLoadInfo.CpuLoadByCore[i];
                    if (i + 1 < pcLoadInfo.CpuLoadByCore.Count)
                    {
                        clbc += "/";
                    }
                }

                pci[0].CpuLoadByCore = clbc;
                pci[0].RamLoad       = pcLoadInfo.RamLoad;

                db.Entry(pci[0]).State = EntityState.Modified;
            }
            else
            {
                PcLoadInfo pci2 = new PcLoadInfo();
                pci2.CpuLoad = pcLoadInfo.CpuLoad;

                string clbc = "";
                for (int i = 0; i < pcLoadInfo.CpuLoadByCore.Count; i++)
                {
                    clbc += pcLoadInfo.CpuLoadByCore[i];
                    if (i + 1 < pcLoadInfo.CpuLoadByCore.Count)
                    {
                        clbc += "/";
                    }
                }

                pci2.CpuLoadByCore = clbc;
                pci2.RamLoad       = pcLoadInfo.RamLoad;
                pci2.PcID          = id;
                db.PcLoadInfoes.Add(pci2);
            }

            try
            {
                await db.SaveChangesAsync();

                return(StatusCode(HttpStatusCode.NoContent));
            }
            catch (Exception)
            {
                return(StatusCode(HttpStatusCode.InternalServerError));
            }
        }