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 :

fonction IF ne retourne pas une valeur pour tous les chemins de code


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 31
    Points : 25
    Points
    25
    Par défaut fonction IF ne retourne pas une valeur pour tous les chemins de code
    Hello,

    J'ai un warning sur ma fonction groupTest qui me dit ceci:
    Avertissement 1 La fonction 'groupTest' ne retourne pas une valeur pour tous les chemins de code. Une exception de référence null peut se produire au moment de l'exécution lorsque le résultat est utilisé.
    Cette erreur veut dire qu'il n'y a pas forcement de "réponse" pour tout les cas de figures ? Si oui je ne vois pas quoi mettre pour un if...

    Pouvez-vous m'aider à corriger cette boulette ?

    voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        Function groupTest() As Object()
     
            If (My.User.IsInRole("RBAFCT_LIS")) Then
     
                Server.Transfer("adminpage.aspx")
     
            Else : Server.Transfer("userpage.aspx")
     
            End If
     
     
        End Function

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 319
    Points : 414
    Points
    414
    Par défaut
    Bonjour
    Euh question bete, y'a pas de return dans ta fonction?!

    essaye de faire un code comme ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function groupTest() as object
    dim var as object =  Server.Transfer("userpage.aspx")
     
            If (My.User.IsInRole("RBAFCT_LIS")) Then      var =Server.Transfer("adminpage.aspx")
     
    return var
    End function
    En esperant t'avoir aidé

    Nasty
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'TODO : trouver une signature mieux que celle la

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 10
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par sammy1988 Voir le message
    Hello,

    J'ai un warning sur ma fonction groupTest qui me dit ceci:
    Avertissement 1 La fonction 'groupTest' ne retourne pas une valeur pour tous les chemins de code. Une exception de référence null peut se produire au moment de l'exécution lorsque le résultat est utilisé.

    Cette erreur veut dire qu'il n'y a pas forcement de "réponse" pour tout les cas de figures ? Si oui je ne vois pas quoi mettre pour un if...

    Pouvez-vous m'aider à corriger cette boulette ?
    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        Function groupTest() As Object()
     
            If (My.User.IsInRole("RBAFCT_LIS")) Then
     
                Server.Transfer("adminpage.aspx")
    return ton_valeur
            Else : Server.Transfer("userpage.aspx")
    return ton_valeur
            End If


    ou si ne voulez pas de return vous devez utiliser un procedure sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    dim sub()
      If (My.User.IsInRole("RBAFCT_LIS")) Then
     
                Server.Transfer("adminpage.aspx")
     
      Else : Server.Transfer("userpage.aspx")
      End If
     
        End Function

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 31
    Points : 25
    Points
    25
    Par défaut
    Merci a vous 2 par contre je suis bête mais je ne comprends pas quoi mettre après le Return comme valeur ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 319
    Points : 414
    Points
    414
    Par défaut
    Bah tu retourne la valeur que tu veux recuperer!

    Le tuto VB ca peut t'etre utile

    Nasty
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'TODO : trouver une signature mieux que celle la

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 31
    Points : 25
    Points
    25
    Par défaut
    Citation Envoyé par nasty Voir le message
    Bah tu retourne la valeur que tu veux recuperer!

    Le tuto VB ca peut t'etre utile

    Nasty
    justement, je ne cherche pas a récupérer de valeur mais je voulais juste orienter l'utilisateur avec ce code vers telle ou telle page

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 319
    Points : 414
    Points
    414
    Par défaut
    Alors il ne faut pas faire une fonction. Une simple sub suffit.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public sub groupTest
            If (My.User.IsInRole("RBAFCT_LIS")) Then
                Server.Transfer("adminpage.aspx")
            Else 
                Server.Transfer("userpage.aspx")
            End If
    End Sub
    Nasty
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'TODO : trouver une signature mieux que celle la

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 31
    Points : 25
    Points
    25
    Par défaut
    Citation Envoyé par nasty Voir le message
    Alors il ne faut pas faire une fonction. Une simple sub suffit.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public sub groupTest
            If (My.User.IsInRole("RBAFCT_LIS")) Then
                Server.Transfer("adminpage.aspx")
            Else 
                Server.Transfer("userpage.aspx")
            End If
    End Sub
    Nasty
    nickel ça par contre je fais comment pour l'appeler avant j'utilisais <%Response.Write(groupTest)%> dans ma page asp.net

    merci



    voila ce quil faut utiliser pour garder la ligne plus haut )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Function groupTest() As Object()        
        If (My.User.IsInRole("RBAFCT_LIS")) Then
            Server.Transfer("adminpage.aspx")        
        Else : Server.Transfer("userpage.aspx")        
        End If
        Return Nothing
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 16/04/2020, 17h57
  2. [Débutant] fonction qui ne retourne pas de valeur
    Par chuspyto dans le forum VB.NET
    Réponses: 5
    Dernier message: 13/05/2013, 22h13
  3. fonction qui ne retourne pas de valeur
    Par 241987 dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 16/07/2009, 08h41
  4. Réponses: 3
    Dernier message: 06/09/2007, 14h31
  5. Installation d'une imprimante pour tous les utilisateurs
    Par chobol dans le forum Windows XP
    Réponses: 4
    Dernier message: 04/09/2007, 22h28

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