Пример #1
0
        public async Task <HttpResponseMessage> Post([FromBody] UserViewModel model)
        {
            try
            {
                var user = new ApplicationUser {
                    UserName = model.UserName, Email = model.UserName
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    YerpeContext.AspNetUsers.Single(x => x.UserName == user.UserName).Rooms.Add(YerpeContext.Rooms.Single(r => r.Id == model.RoomId));
                    YerpeContext.SaveChanges();

                    var message = new MailMessage("*****@*****.**", model.UserName)
                    {
                        Body = String.Format(
                            "The legend that is Graham McVea has signed you up for Yerpe \n\n Your username is {0}  \n Your password is {1} \n\n http://www.yerpe.com",
                            model.UserName, model.Password)
                    };

                    var client = new SmtpClient();
                    client.Send(message);

                    return(Request.CreateResponse(HttpStatusCode.Created, model));
                }
                return(Request.CreateResponse(HttpStatusCode.NotImplemented));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
Пример #2
0
        public HttpResponseMessage Post([FromBody] RoomViewModel roomModel)
        {
            var room = new Room
            {
                Name        = roomModel.Name,
                AspNetUsers = new List <AspNetUser>(),
                Messages    = new List <Message>()
            };

            YerpeContext.Rooms.Add(room);
            YerpeContext.SaveChanges();

            return(Request.CreateResponse(HttpStatusCode.OK, room));
        }