Question

J'ai une application qui obtient une adresse e-mail et un mot de passe GMail à partir d'une table de base de données, et de la vérifier, avant d'envoyer un message à l'aide de ces e-mails, mais la partie suivante me renvoie une exception, chaque fois qu'une erreur de validation se produit.

new System.Net.NetworkCredential(username, password);

Comment puis-je vérifier que le nom d'utilisateur et le mot de passe sont corrects sans lancer une exception lors de l'exécution?

Était-ce utile?

La solution

Cette réponse a été fournie afin de déterminer la nature exacte du problème car le code initialement publié était insuffisant.

Selon le Documentation Le constructeur ne soulève pas d'exception - sauf si vous utilisez le version qui prend un SecureString pour le mot de passe.

Dans ce cas, il soulève un NotSupportedException Si la classe Securestring n'est pas prise en charge.

Quelle exception est réellement élevée?

Autres conseils

Documentation pour NetworkCredential(string, string) ne dit rien sur les exceptions. Mono la mise en oeuvre Ne lance pas non plus des exceptions dans le constructeur.

Obtenez-vous une exception lorsque vous essayez de envoyer un email?

Dans les deux cas, enveloppez-le dans un try/catch bloquer. C'est ainsi que les exceptions sont censées être gérées.
Si vous êtes nouveau dans des exceptions, assurez-vous également de lire Post d'Eric À ce sujet, il se rapporte directement à votre question.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top