public ActionResult <QuestionGetSingleResponse> PostQuestion(QuestionPostRequest questionPostRequest) { // TODO - call the data repository to save the question //var savedQuestion = _dataRepository.PostQuestion(questionPostRequest); //var savedQuestion = //_dataRepository.PostQuestion(new QuestionPostFullRequest //{ // Title = questionPostRequest.Title, // Content = questionPostRequest.Content, // UserId = "1", // UserName = "******", // Created = DateTime.UtcNow //}); //// TODO - return HTTP status code 201 //return CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion); var savedQuestion = _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = "1", UserName = "******", Created = DateTime.UtcNow }); return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); }
public QuestionGetSingleResponse PostQuestion(QuestionPostRequest question) { using (var connection = new SqlConnection(_connectionString)) { connection.Open(); var questionId = connection.QueryFirst <int>(@"EXEC dbo.Question_Post @Title = @Title, @Content = @Content,@UserId = @UserId, @UserName = @UserName, @Created = @Created", question); return(GetQuestion(questionId)); } }
public async Task <ActionResult <QuestionGetSingleResponse> > PostQuestion(QuestionPostRequest questionPostRequest) { var savedQuestion = await _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = User.FindFirst(ClaimTypes.NameIdentifier).Value, UserName = await GetUserName(), Created = DateTime.UtcNow }); return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); }
public ActionResult <QuestionGetSingleResponse> PostQuestion(QuestionPostRequest questionPostRequest) { var savedQuestion = _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = "1", UserName = "******", Created = DateTime.UtcNow }); return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); }
public async Task <ActionResult <QuestionGetSingleResponse> > PostQuestion(QuestionPostRequest questionPostRequest) { var savedQuestion = await _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = "hello", UserName = "******", Created = DateTime.UtcNow }); return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); }
PostQuestion(QuestionPostRequest questionPostRequest) { // TODO - call the data repository var savedQuestion = _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = User.FindFirst(ClaimTypes.NameIdentifier).Value, UserName = await GetUserName(), Created = DateTime.UtcNow }); // TODO - return HTTP status code 201 return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); }
PostQuestion(QuestionPostRequest questionPostRequest) { var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value; var userName = await GetUserName(); var converted = _mapper.Map <QuestionPostFullRequest>(questionPostRequest, opt => { opt.Items["UserId"] = userId; opt.Items["UserName"] = userName; }); var savedQuestion = await _dataRepository.PostQuestion(converted); return(CreatedAtAction( nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion )); }
public Question PostQuestion(QuestionPostRequest questionPostRequest) { using (var connection = new MySqlConnection(_connectionString)) { connection.Open(); connection.Execute( @"INSERT INTO question(name, type, options) VALUES (@QName, @Type, @Options);", new { questionPostRequest.QName, questionPostRequest.Type, Options = JsonSerializer.Serialize(questionPostRequest.Options) } ); return(connection.QueryFirstOrDefault <Question>( @"SELECT id, name, type, options FROM question ORDER BY id DESC LIMIT 1;" )); } }
public async Task <ActionResult <QuestionGetSingleResponse> > PostQuestion(QuestionPostRequest questionPostRequest) { //var json = await new StreamReader(Request.Body).ReadToEndAsync(); //var questionPostRequest = JsonConvert.DeserializeObject<QuestionPostRequest>(json); var savedQuestion = await _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = User.FindFirst(ClaimTypes.NameIdentifier).Value, UserName = await GetUserName(), Created = DateTime.UtcNow }); return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); }
public async Task <ActionResult <QuestionGetSingleResponse> > PostQuestion(QuestionPostRequest questionPostRequest) // Removed (QuestionPostRequest questionPostRequest) { //var json = await new StreamReader(Request.Body).ReadToEndAsync(); //var questionPostRequest = //JsonConvert.DeserializeObject<QuestionPostRequest>(json); // TODO - call the data repository to save the question var savedQuestion = await _dataRepository.PostQuestion(new QuestionPostFullRequest { Title = questionPostRequest.Title, Content = questionPostRequest.Content, UserId = User.FindFirst(ClaimTypes.NameIdentifier).Value, UserName = await GetUserName(), Created = DateTime.UtcNow } ); //_dataRepository.PostQuestion(questionPostRequest); // TODO - return HTTP status code 201 return(CreatedAtAction(nameof(GetQuestion), new { questionId = savedQuestion.QuestionId }, savedQuestion)); // redirect ap/questions/3 }