public async Task <ActionResult> PostRespostasAsync(int id, [FromBody] ColetaDto dados) { var idUsuario = User.GetUserId(); var coleta = new Coleta { Data = dados.Data, IdQuestionario = id, IdUsuario = idUsuario, Latitude = dados.Latitude, Longitude = dados.Longitude }; db.Coleta.Add(coleta); foreach (var resposta in dados.Respostas) { db.RespostaColeta.Add(new RespostaColeta { IdColetaNavigation = coleta, IdOpcaoResposta = resposta.IdOpcaoResposta, IdPergunta = resposta.IdPergunta, Valor = resposta.Valor }); } await db.SaveChangesAsync(); return(NoContent()); }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='id'> /// </param> /// <param name='dados'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task PostRespostasAsync(this IColetaApiClient operations, int id, ColetaDto dados = default(ColetaDto), CancellationToken cancellationToken = default(CancellationToken)) { await operations.PostRespostasWithHttpMessagesAsync(id, dados, null, cancellationToken).ConfigureAwait(false); }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='id'> /// </param> /// <param name='dados'> /// </param> public static void PostRespostas(this IColetaApiClient operations, int id, ColetaDto dados = default(ColetaDto)) { Task.Factory.StartNew(s => ((IColetaApiClient)s).PostRespostasAsync(id, dados), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult(); }