コード例 #1
0
        private void SeedDatabase()
        {
            using (var context = new SupportTicketDbContext(_connectionString))
            {
                var products = new List <Product>()
                {
                    new Product()
                    {
                        Description = "P1"
                    },
                    new Product()
                    {
                        Description = "P2"
                    },
                    new Product()
                    {
                        Description = "P3"
                    }
                };

                foreach (var newProduct in products)
                {
                    var dbProduct =
                        context.Product.ToList().FirstOrDefault(p => p.Description.Equals(newProduct.Description));
                    if (dbProduct == null)
                    {
                        context.Product.AddOrUpdate(newProduct);
                    }
                }

                var severities = new List <Severity>()
                {
                    new Severity()
                    {
                        DisplayName = "Mild"
                    },
                    new Severity()
                    {
                        DisplayName = "Medium"
                    },
                    new Severity()
                    {
                        DisplayName = "Critical"
                    }
                };

                foreach (var newSeverity in severities)
                {
                    var dbSeverity =
                        context.Severity.ToList().FirstOrDefault(s => s.DisplayName.Equals(newSeverity.DisplayName));
                    if (dbSeverity == null)
                    {
                        context.Severity.AddOrUpdate(newSeverity);
                    }
                }

                context.SaveChanges(true);
            }
        }
コード例 #2
0
        public bool DeleteTicket(int ticketId)
        {
            using (var ctx = new SupportTicketDbContext(_connectionString))
            {
                var ticket = GetTicket(ticketId);
                if (ticket == null)
                {
                    return(false);
                }

                ctx.Remove(ticket);
                ctx.SaveChanges();
                return(true);
            }
        }
コード例 #3
0
        public Ticket UpdateTicket(Ticket ticket)
        {
            using (var ctx = new SupportTicketDbContext(_connectionString))
            {
                var result = ctx.Tickets
                             .First(t => t.TicketId == ticket.TicketId);

                result.Active      = ticket.Active;
                result.Description = ticket.Description;
                result.Problem     = ticket.Problem;
                result.ProductId   = ticket.ProductId;
                result.SeverityId  = ticket.SeverityId;

                ctx.SaveChanges();

                return(result);
            }
        }
コード例 #4
0
        public virtual Ticket AddTicket(Ticket ticket)
        {
            using (var ctx = new SupportTicketDbContext(_connectionString))
            {
                ticket.Product  = null;
                ticket.Severity = null;
                ctx.Tickets.Add(ticket);

                ctx.SaveChanges();

                var result = ctx.Tickets
                             .Include("Product")
                             .Include("Severity")
                             .FirstOrDefault(t => t.TicketId == ticket.TicketId);

                return(result);
            }

            // return new Tickets();
        }