none
Usando Exceptions RRS feed

  • Pergunta

  • Boa tarde,

    Gostaria de saber como posso utilizar as exceptions em funções localizadas no Webservice. A função que eu preciso retorna um DataTable ou um DataSet mas gostaria de saber como faz no caso do void também, se for possível. Mas quero saber primeiro como proceder quando a função do Webservices retorna uma variavel?

    Agradeço a atenção,

    André Ishihara

    quinta-feira, 13 de outubro de 2011 19:32

Todas as Respostas

  • Olá André,

    Uma boa prática da construção de web services é fornecer um modelo robusto de resposta.

    Geralmente é interessante estourar exception para quem estiver consumindo seus serviços.

    Por isso é interessante criar classes de resposta de execução, estas classes teriam essa estrutura:

     

    public class RetornoMetodoXPTO
    {
    public bool ExecutadoComSucesso{get;set;}
    public DataTable Resultado {get;set;}
    public string MensagemErro {get;set;}
    }
    

     


    Se observar essa classe possui três propriedades:

    ExecutadoComSucesso: booleano que indica se tudo foi executado corretamente.
    Resultado: Propriedade que contém os dados com o resultado de sua execução. O uso de DataTables não é o mais indicado, pois se outra tecnologia (como o VB6) tentar consumir esses dados, terá de trabalhar com uma estrutura complexa de XML, então é melhor retornar um Array de alguma entidade (por exemplo: Produtos[], Pedidos[], Usuario[]). Caso a propriedade ExecutadoComSucesso seja igual a False, então esta propriedade deve retornar vázia.
    MensagemErro: Caso a propriedade ExecutadoComSucesso seja igual a false esta propriedade deve conter a mensagem de erro resultante. Caso a propriedade ExecutadoComSucesso esta propriedade deve ser igual a vazio (string.empty)

     

    []s!

     


    Fernando Henrique Inocêncio Borba Ferreira
    while(alive){ this.WriteCode(); }
    Blog: http://ferhenriquef.wordpress.com/
    Twitter: @ferhenrique
    sexta-feira, 14 de outubro de 2011 11:24