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

ASP.NET Discussion :

gridview en mode update


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Octobre 2008
    Messages : 187
    Par défaut gridview en mode update
    Bonjour,
    J'ai une gridview en edit mode j'essaye de mettre à jour toutes ses lignes à la fois pour 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
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
      private void Update()
        {
     
            string cmd = @"UPDATE EXAMEN set NOTE= CASE 
    WHEN CODE_MATIERE = '1' and @note1 =99  then '0'  
    when CODE_MATIERE = '1' and @note1 <>99  then @note1  
            WHEN CODE_MATIERE = '2' and @note2 ='99'  then '0'  
    when CODE_MATIERE = '2' and @note2 <>99  then @note2 END, PRESENCE=
    CASE WHEN CODE_MATIERE = '1' and @note1 =99 then 'TRUE' 
    when CODE_MATIERE = '2' and @note2 ='99'  then 'TRUE'  else 'FALSE'
     
    end
    WHERE NUM_INSCRIPTION = @num;";
     
     
            float note1, note2;
            string num;
            SqlCommand myCommand;
            SqlParameter param1, param2, param3;
     
            using (SqlConnection myConnection = new SqlConnection(ConnectionString))
            {
                myConnection.Open();
     
                foreach (GridViewRow row in GridView1.Rows)
                {
                    note1 = float.Parse(((TextBox)row.FindControl("tmoy1")).Text);
                    note2 = float.Parse(((TextBox)row.FindControl("tmoy4")).Text);
                    num = ((Label)row.FindControl("lblUserID1")).Text;
     
                    myCommand = new SqlCommand(cmd, myConnection);
     
                    param1 = new SqlParameter("num", SqlDbType.VarChar, 4);
                    param1.Value = num;
                    myCommand.Parameters.Add(param1);
     
                    param2 = new SqlParameter("note1", SqlDbType.Float, 2);
                    param2.Value = note1;
                    myCommand.Parameters.Add(param2);
     
                    param3 = new SqlParameter("note2", SqlDbType.Float, 2);
                    param3.Value = note2;
                    myCommand.Parameters.Add(param3);
     
                    if (note1 != null && note1 <= 20 && note1 >= 0 && note2 != null && note2 <= 20 && note2 >= 0)
                    {
     
     
     myCommand.ExecuteNonQuery();
     
     
                    }
                    else { Response.Write("les données doivent etre entre 0 et 20"); }
     
     
                    myConnection.Close();
                }       
     
            }
     
        }
    le code fonctionne parfois et bloque d'autres ,je sais pas pourquoi .
    est ce à cause de float ? si non ya t'elle une autre façon pour faire ça ?
    merci

  2. #2
    Membre émérite Avatar de bizet
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Par défaut
    Salut

    Ca va pas etre facile de t'aider sans plus d'informations.

    Est ce que tu n'aurais pas des valeurs qui soient nulles ?
    Dans ce cas, il faut utiliser DBNull.Value.

  3. #3
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Ca veut dire quoi bloque?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Octobre 2008
    Messages : 187
    Par défaut
    Bonjour,
    Je veux dire que parfois la mise à jour ne se fait pas et portant j'ai aucun message d'erreur .
    j'ai essayé de tester d'abord pour les valeurs non nul pour passer après au problème des valeurs nuls mais portant j'ai un problème que j'arrive pas à détecter même avec le débogage .
    Merci

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/01/2008, 15h04
  2. Utilisation de sunopsis en mode update avec sequence Oracle
    Par ecoulees dans le forum Alimentation
    Réponses: 3
    Dernier message: 29/11/2007, 21h08
  3. [C# 2.0] GridVIew en mode edition
    Par goodfaith dans le forum ASP.NET
    Réponses: 3
    Dernier message: 11/10/2007, 10h49
  4. Modification d'un champ dans un gridview pour l'update
    Par Aumélisse dans le forum ASP.NET
    Réponses: 3
    Dernier message: 23/08/2007, 14h17
  5. Modifier une cellule d'une GridView durant l'update
    Par harry25 dans le forum VB.NET
    Réponses: 1
    Dernier message: 26/04/2007, 11h16

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