none
Sobre Throwing Exceptions RRS feed

  • Pergunta

  • E aí pessoal...

    Gostaria de saber se existe alguma maneira de forçar o usuário a colocar uma classe minha dentro  do "try...catch".

    Em algumas linguagens certos métodos devem ser colocados no try...catch. Se não estiverem, em tempo de compilação um erro já é apontado. Gostaria de saber se há no C# alguma funcionalidade deste tipo.

    Valeu!
    quarta-feira, 12 de julho de 2006 13:41

Respostas

  • Júlio,

    Você diz tipo no Java quando você especifica que um método joga uma exceção para fora (como "throws AlgumaException" ou algo do gênero), e então obtém erro de compilação caso a chamada do método não esteja inserido num try...catch, certo? Desconheço construção semelhante em C#.

    Abraços,
    Francisco
    Ok,Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    quarta-feira, 12 de julho de 2006 15:02
    Moderador

Todas as Respostas

  • Olá Júlio,

    Posso estar enganado porem não acho que será possível desta forma... A estrutura try..catch ou a ausencia dela não implica em erro de compilação e ainda existe um problema maior.... Como ira saber se um código não esta sendo chamado dentro de uma estrutura try...cacth :

    Public sub Minha funcao1
      ....
      try
         Funcaogravar()
      catch....
    end sub

    public sub Funcaogravar
         'gravacao de dados sem try..cacth
    end sub

    Pergunto ,. se a funcaogravar não tem try...cacth estaria errada ? ela esta sendo executada dentro de um bloco try..cacth

    O que pode e deve ser feito é criar uma metodologia de deenvolvimento em camadas atrelada a um bom framework  criando uma facha de acesso a dados onde toda a gerencia de excessão seria tratada.


     

    quarta-feira, 12 de julho de 2006 14:45
    Moderador
  • Júlio,

    Você diz tipo no Java quando você especifica que um método joga uma exceção para fora (como "throws AlgumaException" ou algo do gênero), e então obtém erro de compilação caso a chamada do método não esteja inserido num try...catch, certo? Desconheço construção semelhante em C#.

    Abraços,
    Francisco
    Ok,Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    quarta-feira, 12 de julho de 2006 15:02
    Moderador
  • Olá galera.. .valeu pela ajuda!

    Bom Fernando... é bem isso que estou desenvolvendo: uma camada de acesso a dados que trate todas as exceções, mas ela está lançando as exceções para a camada superior (camada de negócios). Até aí tudo bem, pq como tem acesso a dados, todo mundo sabe que deve-se colocar o try...catch. Mas essa camada de negócios tb lança exceções para a interface com o usuário (web e winforms) e aí, na hora de criar esses objetos eu queria forçar que o try...catch fosse colocado como no Java (qdo vc declara métodos com o throws xxxx).

    Bom, pelo que o Francisco disse, não deve existir algo do tipo na linguagem, né.. hehehe..

    Se alguém quiser comentar e me instruir sobre um modo mais fácil / ágil ou com menos probabilidade de erros, fique à vontade para comentar, blz??

    Valeu galera!
    quarta-feira, 12 de julho de 2006 16:59