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 :

[ASP.NET C# 2.0] Gridview déconnecté


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
    Juillet 2004
    Messages
    231
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2004
    Messages : 231
    Par défaut [ASP.NET C# 2.0] Gridview déconnecté
    Bonjour,

    J'aimerai afficher les données d'une table dans un gridview et être ensuite capable de faire les mises à jour via le gridview et cela de manière déconnecté; à savoir que mes mises à jour ne soient pas directement impactées dans ma db.
    Tout cela sera impactée sur la db au click sur un bouton "Valider les changements", est ce possible avec le gridview ?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 20
    Par défaut
    Bonjour,

    Si je ne me trompe pas c'est justement le but d'un DataSet. Tu rempli ton DataSet avec le contenu de ta base de donnée et tu bind ton GridView sur le DataSet. Le DAtaSet est deconnecté, tu peu mettre a jour ta base directement a partir du DataSet ainsi modifié. Ca doit etre dans le tuto ADO.NET.

  3. #3
    Membre éclairé Avatar de Asiany
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Par défaut
    Salut,
    Thallak a raison.

    As tu lu ces articles?
    http://dotnet.developpez.com/cours/ado.net/
    http://dotnet.developpez.com/tutoriels/ado2/csharp/

    Je pense qu'ils peuvent fortement t'intéressé.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    231
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2004
    Messages : 231
    Par défaut
    Citation Envoyé par thallak
    Tu rempli ton DataSet avec le contenu de ta base de donnée et tu bind ton GridView sur le DataSet.
    Oui en fait c'est ce que je fais
    Dans mon Page_Load je bind mon GridView à un dataset qui est peuplé par une proc_stock.
    Sauf que quand je passe mon GridView en "edit", que je fais mes modifs, que je "update" ma saisie, il me recharge la page et là mon GridView est à nouveau "bind" sur mon dataset qui est encore à nouveau peuplé par mon ma proc_stock. Si je rajoute une condition dans mon Page_Load: If (!IsPostback) le problème est que dans ce cas mon GridView n'a plus de source.

    ps : je n'utilise pas de ObjectDataSource


    Citation Envoyé par Asiany
    Salut,
    Thallak a raison.

    As tu lu ces articles?
    http://dotnet.developpez.com/cours/ado.net/
    http://dotnet.developpez.com/tutoriels/ado2/csharp/

    Je pense qu'ils peuvent fortement t'intéressé.
    Je les ai lu il y a plusieurs mois mais je vais aller y refaire un tour des fois que je trouve la solution.

  5. #5
    Membre éclairé Avatar de Asiany
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 73
    Par défaut
    Les méthodes INSERT, UPDATE, DELETE de ta gridview ont ils été générés ? Comment rempli tu ta gridview? En code behind ou avec un SqlDataSource ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    231
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2004
    Messages : 231
    Par défaut
    Citation Envoyé par Asiany
    Les méthodes INSERT, UPDATE, DELETE de ta gridview ont ils été générés ? Comment rempli tu ta gridview? En code behind ou avec un SqlDataSource ?
    Voilà comment je remplis mon GridView par code behind
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
        protected void Page_Load(object sender, EventArgs e)
        {
    	test_DAO dao = new test_DAO();             
    	DataSet ds = dao.findAll();
    	DataTable dt = ds.Tables[0];
    	GridView2.DataSource = dt;
    	GridView2.DataBind();
        }
    test_DAO est une classe d'accès aux données.
    Ma méthode findAll() retourne un dataset qui contient une datatable qui sera ma datasource.

    Voici mes 3 méthodes qui gérent les événements de mon GridView
    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
     
    	protected void GridView2_RowEditing(object sender, GridViewEditEventArgs e)
    	{
    		GridView2.EditIndex = e.NewEditIndex;
    		GridView2.DataBind();
    	}
    	protected void GridView2_RowUpdating(object sender, GridViewUpdateEventArgs e)
    	{
     
    	}
    	protected void GridView2_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    	{
    		GridView2.EditIndex = -1;
    		GridView2.DataBind();
    	}
    Je n'ai pas de méthode INSERT et DELETE pour l'instant.
    La méthode GridView2_RowUpdating est celle qui doit contenir mon code qui va gérer la mise à jour, mais ensuite elle doit réafficher mon GridView avec les saisies de l'utilisateur sans que cela n'est eu d'impact dans la base de données.

    J'ai pas mal cherché sur les forums, quelques personnes avaient ce problème mais pour l'instant je n'ai pas trouvé de solution, je continue de chercher... Mais c'est vrai que la plupart des gens impactent directement la base de données donc cela ne pose pas de problème

Discussions similaires

  1. [ASP.NET / C#] - Conseils sur Gridview
    Par Bishoot dans le forum ASP.NET
    Réponses: 4
    Dernier message: 06/08/2014, 18h57
  2. [Asp.Net]TextBox dans une Gridview
    Par Noobs_ dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 08/06/2009, 02h39
  3. Réponses: 2
    Dernier message: 09/08/2006, 03h13
  4. [ASP.Net/GridView] Comment effectuer une jointure ?
    Par nikalkal dans le forum Accès aux données
    Réponses: 3
    Dernier message: 20/07/2006, 09h05
  5. [ASP.NET|C#] Gridview et butonfield
    Par dumser1 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/03/2006, 13h26

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