예제 #1
0
        public async Task <MessageOutputModel> CreateMessageAsync(MessageCreateInputModel inputModel)
        {
            var messageModel = AutoMapper.Map <Message>(inputModel);
            await MessagesContext.Messages.AddAsync(messageModel)
            .ConfigureAwait(false);

            await MessagesContext.SaveChangesAsync()
            .ConfigureAwait(false);

            return(AutoMapper.Map <MessageOutputModel>(messageModel));
        }
예제 #2
0
        public async Task SendMessage(string content)
        {
            MessageCreateInputModel model = new MessageCreateInputModel {
                Content = htmlSanitizer.Sanitize(content)
            };
            string userId   = Context.UserIdentifier;
            string username = Context.User.Identity.Name;
            await messageService.Create(model, userId);

            await Clients.All.SendAsync("ReceiveMessage", username, content);
        }
        public async Task <ActionResult> Create(MessageCreateInputModel model)
        {
            string  userId  = userManager.GetUserId(this.User);
            Message message = await messageService.Create(model, userId);

            MessageViewModel viewModel = new MessageViewModel {
                Content = message.Content, User = message.User.UserName
            };

            return(Ok(viewModel));
        }
예제 #4
0
        public async Task <Message> Create(MessageCreateInputModel model, string userId)
        {
            Message message = new Message {
                UserId = userId, Content = model.Content
            };
            await context.Messages.AddAsync(message);

            await context.SaveChangesAsync();

            return(message);
        }
예제 #5
0
        public async Task <IActionResult> Create([FromBody] MessageCreateInputModel inputModel)
        {
            //Logger.LogInformation(LoggingEvents.GetItem, "Getting item {ID}", id);
            if (inputModel == null)
            {
                return(BadRequest());
            }

            var outputModel = await MessageService.CreateMessageAsync(inputModel).ConfigureAwait(false);

            return(CreatedAtRoute("GetMessage",
                                  new { id = outputModel.Id }, outputModel)); //TODO: Error
        }
예제 #6
0
        public async Task <IActionResult> ContactUs(MessageCreateInputModel input)
        {
            var dto = new MessagesDto
            {
                FirstName = input.FirstName,
                LastName  = input.LastName,
                Email     = input.Email,
                Subject   = input.Subject,
            };

            await this.messagesService.CreateMessageAsync(dto);

            return(this.Redirect("/"));
        }