Example #1
0
        public void SaveToDatabaseComputerDetailsData()
        {
            DataManager    dataManager     = new FullDataManager();
            var            computerSummary = dataManager.GetComputerSummary();
            var            context1        = new MetricsContext();
            ComputerDetail computerDetail  = new ComputerDetail()
            {
                Name      = computerSummary.Name,
                User      = computerSummary.User,
                Cpu       = computerSummary.Cpu,
                Ram       = computerSummary.Ram,
                VideoCard = computerSummary.VideoCard,
                Ip        = computerSummary.Ip.ToString()
            };

            if (context1.ComputerDetails.Count() != 0)
            {
                if (context1.ComputerDetails.Last().Name != computerDetail.Name)
                {
                    context1.Add(computerDetail);
                    context1.SaveChanges();
                }
            }
            else
            {
                context1.Add(computerDetail);
                context1.SaveChanges();
            }
        }
Example #2
0
        //Updates static computer data to database
        public void UpadatStaticeComputerData()
        {
            context.Database.EnsureCreated();
            bool t       = false; // Is the computer already in the list
            var  manager = new FullDataManager();
            var  summary = manager.GetComputerSummary();

            context = new MetricsContext();



            computerDetail           = new ComputerDetail();
            computerDetail.Cpu       = summary.Cpu;
            computerDetail.Ip        = summary.Ip.ToString();
            computerDetail.Name      = summary.Name;
            computerDetail.Ram       = summary.Ram;
            computerDetail.VideoCard = summary.VideoCard;
            computerDetail.User      = summary.User;

            //Checks if computer like this already exists in the databae, if it doesnt, it creates a new one
            foreach (var computerD in context.ComputerDetails)
            {
                if (computerD.Name == computerDetail.Name)
                {
                    t = true;
                    computerDetail = computerD; //
                }
            }

            if (!t)
            {
                context.Add(computerDetail);
            }
        }
Example #3
0
 //Displays static data on WinForms
 private void DisplayStaticData(ComputerDetail computerDetail)
 {
     ComputerNameTextBox.Text = computerDetail.Name;
     UserTextBox.Text         = computerDetail.User;
     VideoCardTextBox.Text    = computerDetail.VideoCard;
     IpTextBox.Text           = computerDetail.Ip;
     CpuTextBox.Text          = computerDetail.Cpu;
 }
Example #4
0
        public bool AddNewItem(ComputerDetail computerDetail)
        {
            using (var context = new MetrixContext())
            {
                //Null exception when trying to retrieve data

                /*var value = context.ComputerDetails.FirstOrDefault(x => x.Name.Equals(computerDetail.Name));
                 * if (value != null)
                 *   return false;*/
                context.ComputerDetails.Add(computerDetail);
                context.SaveChanges();
                return(true);
            }
        }
Example #5
0
        private void button1_Click(object sender, EventArgs e)
        {
            //Uses the updater which collects the current computer data and saves it to database using entity
            updater.UpadatStaticeComputerData();
            computerDetail = updater.getLastUpdatedComputerDetail();


            //Displays static data of the current computer
            DisplayStaticData(computerDetail);


            var clock = new Clock();

            clock.UpdateFinished += DisplayDynamicData;
            clock.Start();
        }
Example #6
0
        void WriteStaticDataToDb()
        {
            context.Database.EnsureCreated();
            detail.Name      = dataManager.GetComputerName();
            detail.User      = dataManager.GetUserName();
            detail.Cpu       = dataManager.GetCpuName();
            detail.Ram       = dataManager.GetTotalRam();
            detail.VideoCard = dataManager.GetVideoCardName();
            detail.Ip        = dataManager.GetIpAddress().ToString();
            ComputerDetail detailInDb = context.ComputerDetails.FirstOrDefault(w => w.Name == detail.Name);

            if (detailInDb == null)
            {
                context.ComputerDetails.Add(detail);
                context.SaveChanges();
            }
            else
            {
                detail = detailInDb;
            }
        }
Example #7
0
        public ActionResult Report()
        {
            List <ComputerDetail> data = new List <ComputerDetail>();
            XmlDocument           doc  = new XmlDocument();

            doc.Load(Server.MapPath("~/ComputerDetail.xml"));
            XmlNode node = doc.SelectSingleNode("ADComputerDetail");



            // 得到根节点的所有子节点
            XmlNodeList xnl = node.ChildNodes;
            int         i   = 0;

            foreach (XmlNode xn1 in xnl)
            {
                ComputerDetail computer = new ComputerDetail();
                // 将节点转换为元素,便于得到节点的属性值
                XmlElement xe = (XmlElement)xn1;
                // 得到Type和ISBN两个属性的属性值
                computer.id   = i++;
                computer.name = xe.GetAttribute("Name").ToString();

                XmlNodeList xnl0 = xe.ChildNodes;
                computer.Createby   = xnl0.Item(0).InnerText;
                computer.CreateTime = xnl0.Item(1).InnerText;

                data.Add(computer);
            }
            ComputerDetailModel CM = new ComputerDetailModel()
            {
                computerdetail = data,
            };

            return(View(CM));
        }
        public void AddComputerDetail()
        {
            var duplicate = _context.ComputerDetailsSet.FirstOrDefault(a => a.User == ComputerSummary.User);

            if (duplicate == null)
            {
                var computerDetails = new ComputerDetail
                {
                    Name      = ComputerSummary.Name,
                    Cpu       = ComputerSummary.Cpu,
                    User      = ComputerSummary.User,
                    Ram       = ComputerSummary.Ram,
                    VideoCard = ComputerSummary.VideoCard,
                    Ip        = ComputerSummary.Ip.ToString()
                };

                _context.Add(computerDetails);
                _context.SaveChanges();
            }

            var currenComputer = _context.ComputerDetailsSet.FirstOrDefault(c => c.User == ComputerSummary.User);

            CurrentComputerId = currenComputer.ComputerDetailId;
        }
Example #9
0
        public void ActionTestsParams()
        {
            var      context = this.CreateWrappedContext <DefaultContainer>().Context;
            Employee e1      = new Employee {
                Salary = 300, Name = "bill", PersonId = 1005
            };
            Collection <string> specifications = new Collection <string> {
                "A", "B", "C"
            };
            DateTimeOffset purchaseTime = DateTimeOffset.Now;
            ComputerDetail cd1          = new ComputerDetail {
                ComputerDetailId = 101, SpecificationsBag = new ObservableCollection <string>()
            };
            Customer c1 = new Customer {
                Name = "nill", CustomerId = 1007, Auditing = new AuditInfo {
                    ModifiedBy = "No-one", ModifiedDate = DateTimeOffset.Now, Concurrency = new ConcurrencyInfo {
                        Token = "Test", QueriedDateTime = DateTimeOffset.MinValue
                    }
                }
            };
            AuditInfo a1 = new AuditInfo {
                ModifiedBy = "some-one", ModifiedDate = DateTimeOffset.MinValue, Concurrency = new ConcurrencyInfo {
                    Token = "Test", QueriedDateTime = DateTimeOffset.MinValue
                }
            };

            context.AddToCustomer(c1);
            context.AddToPerson(e1);
            context.AddToComputerDetail(cd1);
            var ar0 = context.BeginSaveChanges(null, null).EnqueueWait(this);

            context.EndSaveChanges(ar0);

            var ar1 = context.BeginExecute(new Uri("Person/Microsoft.Test.OData.Services.AstoriaDefaultService.Employee" + "/Microsoft.Test.OData.Services.AstoriaDefaultService.IncreaseSalaries", UriKind.Relative), null, null, "POST", new BodyOperationParameter("n", 100)).EnqueueWait(this);

            context.EndExecute(ar1);
            var ar11 = context.BeginLoadProperty(e1, "Salary", null, null).EnqueueWait(this);

            context.EndLoadProperty(ar11);
            Assert.AreEqual(400, e1.Salary);

            var ar2 = context.BeginExecute(new Uri("ComputerDetail(" + cd1.ComputerDetailId + ")" + "/Microsoft.Test.OData.Services.AstoriaDefaultService.ResetComputerDetailsSpecifications", UriKind.Relative), null, null, "POST", new BodyOperationParameter("specifications", specifications), new BodyOperationParameter("purchaseTime", purchaseTime)).EnqueueWait(this);

            context.EndExecute(ar2);
            var ar21 = context.BeginLoadProperty(cd1, "PurchaseDate", null, null).EnqueueWait(this);

            context.EndLoadProperty(ar21);
            var ar22 = context.BeginLoadProperty(cd1, "SpecificationsBag", null, null).EnqueueWait(this);

            context.EndLoadProperty(ar22);
            Assert.AreEqual(purchaseTime, cd1.PurchaseDate);
            Assert.AreEqual(specifications.Aggregate("", (current, item) => current + item), cd1.SpecificationsBag.Aggregate("", (current, item) => current + item));

            var ar3 = context.BeginExecute(new Uri("Customer(1007)/Microsoft.Test.OData.Services.AstoriaDefaultService.ChangeCustomerAuditInfo", UriKind.Relative), null, null, "POST", new BodyOperationParameter("auditInfo", a1)).EnqueueWait(this);

            context.EndExecute(ar3);
            var query  = (from c in context.Customer where c.CustomerId == c1.CustomerId select c.Auditing) as DataServiceQuery <AuditInfo>;
            var ar2222 = query.BeginExecute(null, null).EnqueueWait(this);
            var temp   = (query.EndExecute(ar2222) as QueryOperationResponse <AuditInfo>);

            c1.Auditing = temp.SingleOrDefault();
            Assert.AreEqual(c1.Auditing.ModifiedBy, "some-one");
            Assert.AreEqual(c1.Auditing.ModifiedDate, DateTimeOffset.MinValue);
            this.EnqueueTestComplete();
        }
Example #10
0
 public void AddToComputerDetail(ComputerDetail computerDetail)
 {
     base.AddObject("ComputerDetail", computerDetail);
 }
Example #11
0
 public static ComputerDetail CreateComputerDetail(int computerDetailId, global::System.DateTimeOffset purchaseDate)
 {
     ComputerDetail computerDetail = new ComputerDetail();
     computerDetail.ComputerDetailId = computerDetailId;
     computerDetail.PurchaseDate = purchaseDate;
     return computerDetail;
 }
        public void ActionTestsParams()
        {
            
            var context = this.CreateWrappedContext<DefaultContainer>().Context;
            Employee e1 = new Employee {Salary = 300, Name = "bill", PersonId = 1005};
            Collection<string> specifications = new Collection<string> {"A", "B", "C"};
            DateTimeOffset purchaseTime = DateTimeOffset.Now;           
            ComputerDetail cd1 = new ComputerDetail {ComputerDetailId = 101, SpecificationsBag = new ObservableCollection<string>()};
            Customer c1 = new Customer { Name = "nill", CustomerId = 1007, Auditing = new AuditInfo { ModifiedBy = "No-one", ModifiedDate = DateTimeOffset.Now, Concurrency = new ConcurrencyInfo { Token = "Test", QueriedDateTime = DateTimeOffset.MinValue } } };
            AuditInfo a1 = new AuditInfo { ModifiedBy = "some-one", ModifiedDate =  DateTimeOffset.MinValue,Concurrency = new ConcurrencyInfo { Token = "Test", QueriedDateTime = DateTimeOffset.MinValue} };
            context.AddToCustomer(c1);
            context.AddToPerson(e1);
            context.AddToComputerDetail(cd1);
            var ar0 = context.BeginSaveChanges(null, null).EnqueueWait(this);
            context.EndSaveChanges(ar0);

            var ar1 = context.BeginExecute(new Uri("Person/Microsoft.Test.OData.Services.AstoriaDefaultService.Employee" + "/Microsoft.Test.OData.Services.AstoriaDefaultService.IncreaseSalaries", UriKind.Relative), null, null, "POST", new BodyOperationParameter("n", 100)).EnqueueWait(this);
            context.EndExecute(ar1);
            var ar11 = context.BeginLoadProperty(e1, "Salary", null, null).EnqueueWait(this);
            context.EndLoadProperty(ar11);
            Assert.AreEqual(400, e1.Salary);

            var ar2 = context.BeginExecute(new Uri("ComputerDetail(" + cd1.ComputerDetailId + ")" + "/Microsoft.Test.OData.Services.AstoriaDefaultService.ResetComputerDetailsSpecifications", UriKind.Relative), null, null, "POST", new BodyOperationParameter("specifications", specifications), new BodyOperationParameter("purchaseTime", purchaseTime)).EnqueueWait(this);
            context.EndExecute(ar2);
            var ar21 = context.BeginLoadProperty(cd1, "PurchaseDate", null, null).EnqueueWait(this);
            context.EndLoadProperty(ar21);
            var ar22 = context.BeginLoadProperty(cd1, "SpecificationsBag", null, null).EnqueueWait(this);
            context.EndLoadProperty(ar22);
            Assert.AreEqual(purchaseTime, cd1.PurchaseDate);
            Assert.AreEqual(specifications.Aggregate("", (current, item) => current + item),cd1.SpecificationsBag.Aggregate("", (current, item) => current + item));

            var ar3 = context.BeginExecute(new Uri("Customer(1007)/Microsoft.Test.OData.Services.AstoriaDefaultService.ChangeCustomerAuditInfo", UriKind.Relative), null, null, "POST", new BodyOperationParameter("auditInfo", a1)).EnqueueWait(this);
            context.EndExecute(ar3);
            var query = (from c in context.Customer where c.CustomerId == c1.CustomerId select c.Auditing ) as DataServiceQuery<AuditInfo>;
            var ar2222 = query.BeginExecute(null, null).EnqueueWait(this);
            var temp = (query.EndExecute(ar2222) as QueryOperationResponse<AuditInfo>);
            c1.Auditing = temp.SingleOrDefault();
            Assert.AreEqual(c1.Auditing.ModifiedBy , "some-one");
            Assert.AreEqual(c1.Auditing.ModifiedDate, DateTimeOffset.MinValue);
            this.EnqueueTestComplete();
        }
Example #13
0
 public int Add(ComputerDetail add)
 {
     return this.List.Add(add);
 }
Example #14
0
 public int Add(ComputerDetail add)
 {
     return(this.List.Add(add));
 }
Example #15
0
        private void tim_Tick(object sender, EventArgs e)
        {
            // If it's not time, decrement the progress bar and exit
            if (prg.Value > prg.Minimum)
            {
                prg.Value--;
                return;
            }

            // Time to update SUS IDs
            prg.Value = prg.Maximum;

            // Refresh display
            this.Refresh();

            // Get list of current computers
            ComputerTargetScope s = new ComputerTargetScope();

            s.IncludeDownstreamComputerTargets = true;

            ComputerTargetCollection cc = wsus.server.GetComputerTargets(s);

            // Loop through all computers to see if we already know about them
            foreach (IComputerTarget t in cc)
            {
                // Try to find a known computer
                ComputerDetail d = ctc[t];

                if (d == null)
                {
                    // We got a new one!
                    ctc.Add(t);

                    int count = ctc.SusIDCount(t.Id);
                    Log("New computer found - " + t.FullDomainName + " (ID " + t.Id + ")  " + count.ToString() + " of this ID found.");

                    // Do we have a SUS ID we've seen associated with another PC?
                    if (count > 1)
                    {
                        // Yes!  Add it to the data grid, or update the existing entry
                        DataGridViewRow r = null;

                        foreach (DataGridViewRow gr in grdSUSID.Rows)
                        {
                            if (gr.Cells[susID.Index].Value.ToString() == t.Id)
                            {
                                // Found an existing entry - note it and break
                                r = gr;
                                break;
                            }
                        }

                        // Did we find a row, or do we need to add one?
                        if (r == null)
                        {
                            // We need to add one
                            grdSUSID.Rows.Insert(0, 1);
                        }
                        r = grdSUSID.Rows[0];

                        r.Cells[susID.Index].Value     = t.Id;
                        r.Cells[susCount.Index].Value  = count.ToString();
                        r.Cells[susSource.Index].Value = "Detected";
                    }
                }
            }
        }
 public bool AddComputer(ComputerDetail computerDetail)
 {
     return(_computerDetailRep.AddNewItem(computerDetail));
 }