IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

utiliser des variables si NOT NULL


Sujet :

VB.NET

  1. #1
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut utiliser des variables si NOT NULL
    Bonjour,

    J'ai d'un cote une fonction 'envoi_mail' qui comporte 5 ligne Add.to(mail1) destiné a l'envoi de mail, les variables mail1, mail2, mail3, etc sont des String qui contiennent les adresses de plusieurs destinataires, mon problème est que parfois ces variables sont vides et si j'utilise la méthode Add.to avec une variable vide j'ai une erreur, alors comment faire dire si mail1 ou mail3 est NULL alors je n'utilise pas la méthode add.to pour éviter l'erreur ?

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 177
    Points : 4 489
    Points
    4 489
    Par défaut
    If(Not String.IsNullOrEmpty(myString) Add(myString)
    Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    avoir 5 variables pour 5 adresses mail possibles n'est pas un bon design
    mieux vaut avoir une collection de string, comme ca tu traites la collection qu'elle contienne une seule adresse ou 10
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre chevronné
    Avatar de Pelote2012
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 925
    Points : 1 839
    Points
    1 839
    Billets dans le blog
    2
    Par défaut Tout à fait
    Je suis tout à fait d'accord avec pol63.
    En plus, de prévoir d'éventuel changement du nombre de mail.
    Cela simplifiera ton code et il sera plus clair

    Une petite boucle contre X copier/Coller.
    De plus si tu as une erreur, il te faudra passer dans les X copier/coller, alors que dans une boucle ...

    Plus ton code est simple et clair mieux se sera pour la maintenance

    :-)
    Si débugger est l'art d'enlever les bugs ... alors programmer est l'art de les créer

  5. #5
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    Oui la collection voila ce que ca donne :

    j'ai essayé le code mais ca ne fonctionne pas :
    dans mon module1.vb :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public emails As New Collection
    dans mon form qui gère l'envoi de mail :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Try
                With EmailMessage
                    .From = New MailAddress("jgkjoeuigen@laposte.net")
                    For Each itm In emails
                        .To.Add(itm)
                    Next itm
                    .Subject = "Sujet"
                    .Body = TextBox1.Text
                End With

  6. #6
    Membre chevronné
    Avatar de Pelote2012
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 925
    Points : 1 839
    Points
    1 839
    Billets dans le blog
    2
    Par défaut
    Comment tu rempli emails?

    As-tu essayé avec un array de string?
    dim MesEmails() as string
    ...
    Si débugger est l'art d'enlever les bugs ... alors programmer est l'art de les créer

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    Citation Envoyé par gastoncs Voir le message
    j'ai essayé le code mais ca ne fonctionne pas :
    personne n'est devin, merci d'être explicite !
    "ca ne fonctionne pas" peut correspondre à tous les problèmes et messages d'erreur du monde

    et éviter le collection de vb6 mais plutot
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  8. #8
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    ah oui pardon, j'ai oublié des indices en fait j'ai : le message d'erreur est que le destinataires ne peuvent pas être nul !

  9. #9
    Membre chevronné
    Avatar de Pelote2012
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 925
    Points : 1 839
    Points
    1 839
    Billets dans le blog
    2
    Par défaut
    Et avec ce genre de controle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if itm isnot null andalso itm <> string.empty andalso itm.trim.lenght>0 then
     add...
    end if
    De plus si tu es sur que quand tu arrive ç un email null les autres sont nuls
    tu ajoute
    Si débugger est l'art d'enlever les bugs ... alors programmer est l'art de les créer

  10. #10
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    C'est bon j'ai résolu mon soucis avec une collection, voici ma boucle, qui fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                    For Each item In emails
                        .To.Add(item)
                    Next
    mais un autre probléme ce pose, pour le moment j'ai rempli ma collection de cet façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            emails.Add("******@hotmail.com")
            emails.Add("*******@hotmail.com")
    Comment faire pour remplir ma collection avec des textbox ?

  11. #11
    Membre averti
    Homme Profil pro
    Caféinomane
    Inscrit en
    Septembre 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Caféinomane

    Informations forums :
    Inscription : Septembre 2011
    Messages : 202
    Points : 391
    Points
    391
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim sourcetxt() As Windows.Forms.TextBox = {Me.TextBox1, Me.TextBox2, Me.TextBox3, Me.TextBox4}
    for i=0 to sourcetxt.length -1
        emails.Add(sourcetxt.Text)
    Next i
    En mode lecture/écriture.

  12. #12
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    super ca fonctionne et comment je peux faire pour afficher les textbox rempli des valeurs de ma collection ?

  13. #13
    Membre averti
    Homme Profil pro
    Caféinomane
    Inscrit en
    Septembre 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Caféinomane

    Informations forums :
    Inscription : Septembre 2011
    Messages : 202
    Points : 391
    Points
    391
    Par défaut
    Le problème c'est "afficher les textbox", ou c'est "remplir les textbox" ?

    Dans le 2e cas on fait l'opération inverse de la précédente :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim sourcetxt() As Windows.Forms.TextBox = {Me.TextBox1, Me.TextBox2, Me.TextBox3, Me.TextBox4}
    for i=0 to sourcetxt.length -1
        sourcetxt.Text=emails(i).champs_à_mettre_dans_les_textbox
    Next i
    En mode lecture/écriture.

  14. #14
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    sourcetxt(i) ?
    Le Porc est un loup pour le Porc.

  15. #15
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    franticfranz j'ai essayé ton code dans chacune de mes textbox :
    et voici l'erreur :
    'Text' n'est pas un membre de 'System.array'
    mais pourtant je n'ai pas fait un tableau pourquoi j'ai une erreur avec array ?

  16. #16
    Membre averti
    Homme Profil pro
    Caféinomane
    Inscrit en
    Septembre 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Caféinomane

    Informations forums :
    Inscription : Septembre 2011
    Messages : 202
    Points : 391
    Points
    391
    Par défaut
    Oups ! AsmDuty a l'oeil du lynx :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim sourcetxt() As Windows.Forms.TextBox = {Me.TextBox1, Me.TextBox2, Me.TextBox3, Me.TextBox4}
    for i=0 to sourcetxt.length -1
        sourcetxt(i).Text=emails(i).champs_à_mettre_dans_les_textbox
    Next i
    En mode lecture/écriture.

  17. #17
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Points : 1 327
    Points
    1 327
    Par défaut
    Citation Envoyé par gastoncs Voir le message
    mais pourtant je n'ai pas fait un tableau pourquoi j'ai une erreur avec array ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim sourcetxt() As Windows.Forms.TextBox
    ...
    Le Porc est un loup pour le Porc.

Discussions similaires

  1. Réponses: 12
    Dernier message: 11/04/2006, 17h00
  2. Utiliser des variables d'une BDD
    Par Ragnarok_1er dans le forum Access
    Réponses: 3
    Dernier message: 25/01/2006, 08h32
  3. utilisation des variables global dans tout le projet
    Par EYENGA Joël dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 12/01/2006, 10h55
  4. [MFC] utilisation des variables associées
    Par Grey dans le forum MFC
    Réponses: 2
    Dernier message: 18/11/2005, 14h00
  5. Utiliser des variables d'environnements
    Par Xam335 dans le forum C++Builder
    Réponses: 2
    Dernier message: 14/08/2004, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo