//para funcionar o binding de um xml para um array ou list a classe correspondente ao parâmetro 
        //deve ser decorada com a propriedade "[DataContract]" e as propriedades da classe que precisam
        //ser serializadas devem ser decoradas com a propriedade "[DataMember]"
        //Se na origem da requisição o dado for um json isto não é necessário.
        //Ver explicação em: http://www.asp.net/web-api/overview/formats-and-model-binding/json-and-xml-serialization
        public HttpResponseMessage PostMultiplo([FromBody] ListaCondicaoPagamento condicoesDePagamento)
        {
            ApiResponseMessage retornoPortal;
            try
            {
                _cadastroCondicaoPagamento.AtualizarCondicoesDePagamento(condicoesDePagamento);
                retornoPortal = new ApiResponseMessage()
                    {
                        Retorno = new Retorno() {Codigo = "200", Texto = condicoesDePagamento.Count + " condições de pagamento atualizadas"}
                    };
                return Request.CreateResponse(HttpStatusCode.OK, retornoPortal);
            }

            catch (Exception ex)
            {
                retornoPortal = ExceptionUtil.GeraExecaoDeErroParaWebApi(ex);

                return Request.CreateResponse(HttpStatusCode.OK, retornoPortal);
            }
        }
        //para funcionar o binding de um xml para um array ou list a classe correspondente ao parâmetro 
        //deve ser decorada com a propriedade "[DataContract]" e as propriedades da classe que precisam
        //ser serializadas devem ser decoradas com a propriedade "[DataMember]"
        //Se na origem da requisição o dado for um json isto não é necessário.
        //Ver explicação em: http://www.asp.net/web-api/overview/formats-and-model-binding/json-and-xml-serialization
        public HttpResponseMessage PostMultiplo([FromBody] ListaUsuario usuarios)
        {
            ApiResponseMessage retornoPortal;
            try
            {
                var usuariosComNome = usuarios.Where(x => !string.IsNullOrEmpty(x.Nome)).ToList();
                int quantidadeDeUsuariosSemNome = usuarios.Count - usuariosComNome.Count;
                _cadastroUsuario.AtualizarUsuarios(usuariosComNome);
                retornoPortal = new ApiResponseMessage()
                    {
                        Retorno = new Retorno() {Codigo = "200", Texto = usuariosComNome.Count + " usuários atualizados." + 
                        (quantidadeDeUsuariosSemNome > 0 ? quantidadeDeUsuariosSemNome + " usuários não atualizados: " +
                        string.Join(", ", usuarios.Where(x => string.IsNullOrEmpty(x.Nome)).Select(u => u.Login)) + "." : "")
                        }
                    };
                return Request.CreateResponse(HttpStatusCode.OK, retornoPortal);
            }

            catch (Exception ex)
            {
                retornoPortal = ExceptionUtil.GeraExecaoDeErroParaWebApi(ex); 
                return Request.CreateResponse(HttpStatusCode.OK, retornoPortal);
            }
        }