none
ObjectDataSource et champs caché RRS feed

  • Question

  • Lorsque l'on connecte une source de données ObjectDataSource avec une GridView, les champs cachés dans la grille sont passés à null dans la methode Update.

    Hors c'est pas vraiment le cas d'emplois idéal.

    Par exemple avec une classe Contact composée des classiques informations d'un contact. Lorsque l'on affiche une grille pour cette objet a priori on ne va pas afficher toutes les donnés de la classe.

    Le probleme c'est que l'appel fait par la GridView à la methode Update de l'ObjectDataSource passe les valeurs des parametres cachés de la grille à null.

    Du coup votre objet en modification ce fait supprimer des valeurs simplement parcequ'elle ne sont pas affiché !!!

    Bon ça c'etait pour le probleme.

     

    samedi 16 février 2008 15:46

Toutes les réponses

  • J'ai deux solutions au probleme :

    • La solution est simple il faut utiliser des HiddenFields au lieu d'utiliser des BoundFields avec Visible ou Enalbe définit à false.
    • L'autre solution c'est de mettre tout les champs qui ne sont pas affiché dans le DataKeys de la GridView.

    De toutes façon lors de la mise a jour de l'objet, il connait de maniere intresecte les champs qui son ses cles.

     

    Je trouve tout de meme que l'implementation n'est pas propre, mais je n'ai rien trouvé d'autres.

     

    Quelqu'un a une idée ?

     

    http://fberton.blogspot.com

    samedi 16 février 2008 15:51