コード例 #1
0
        public override Task OnDisconnectedAsync(Exception exception)
        {
            _memoryDatabase.UserSession.RemoveRange(_memoryDatabase.UserSession.Where(s => s.ConnectionId == Context.ConnectionId));
            _memoryDatabase.SaveChanges();

            return(base.OnDisconnectedAsync(exception));
        }
コード例 #2
0
        public HttpResponseMessage Create([FromBody] Sample item)
        {
            // Requirement #4 Create a new sample with an associated Status and User.
            //      Return HTTP OK or Error.
            Console.WriteLine("Received New Sample:");

            if (item == null)
            {
                Console.WriteLine("Sample was null...");
                return(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }

            Console.WriteLine(item);
            var sample = item;//Sample.FromJsonString((item as string));

            var user = _context.Users.Where(u => u.Id == sample.CreatedBy)
                       .FirstOrDefault();

            if (user == null)
            {
                Console.WriteLine("Sample had a bad user...");
                return(new HttpResponseMessage(HttpStatusCode.NotFound)
                {
                    ReasonPhrase = "Unrecognized User."
                });
            }

            var status = _context.Statuses.Where(st => st.Id == sample.StatusId)
                         .FirstOrDefault();

            if (status == null)
            {
                Console.WriteLine("Sample had a bad status...");
                return(new HttpResponseMessage(HttpStatusCode.NotFound)
                {
                    ReasonPhrase = "Unrecognized Status."
                });
            }

            try
            {
                _context.Samples.Add(sample);
                _context.SaveChanges();
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown in saveChanges");
                Console.WriteLine(ex.Message);
                _context.Samples.Remove(sample);
                return(new HttpResponseMessage(HttpStatusCode.Conflict)
                {
                    ReasonPhrase = ex.Message
                });
            }


            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
コード例 #3
0
ファイル: Queries.cs プロジェクト: seriouschess/PizzaManager
 public Pizza AddNewPizza(Pizza new_pizza)
 {
     new_pizza.pizza_id = 0;
     _dbContext.Add(new_pizza);
     _dbContext.SaveChanges();
     return(GetPizzaById(new_pizza.pizza_id));
 }