begin process at 2012 05 27 05:59:00
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

ASP.Net

 > ATTENTION PROBLÈME DE DEFAULTVIEW DE DATATABLE

ATTENTION PROBLÈME DE DEFAULTVIEW DE DATATABLE


 Information sur la source

Note :
6 / 10 - par 1 personne
6,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :ASP.Net Source .NET ( DotNet ) Classé sous :datatable, defaultview, paging, dataset, session Niveau :Débutant Date de création :06/06/2006 Vu :11 795

Auteur : Coolpix08

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Voila je poste cette mini source juste par information pour éviter que quelqu'un d'autre galère comme moi...
Parce que j'ai perdu carrement une journé à résoudre le problème.

Voila, en gros je stockais une DataTable dans une variable de Session ( ce qui est super utils quand on réfléchit bien ) et je la rapelait pour la remplir en début de page pour l'utiliser dans un Datagrid Paginer.
Le problème est que la méthode par DefaultView ne marchait qu'une seul fois mais au rechargement...je n'avais pu les données dans le datagrid alors que le datatable était parfaitement remplit...C'est la que je ne comprenait pas...

Et la solution :
  Ben il faut juste utilisé New DataView(Datable) et voila la solution est bonne...
  Par contre ne me demander pas pourquoi...

J'espere que ca va aider certains d'entre vous qui galere peut etre parce que dans la plupart des sources que j'ai vu, il n'y a que le DefaultView qui est utilisé.

Remarque: Il y a peut etre aussi le meme problème pour les DataSet...

++

Source

  • // Création de la variable de session
  • public class Util : System.Web.UI.Page
  • {
  • public DataTable DataTable
  • {
  • get{ return (DataTable)Session["DataTable"]; }
  • set{ Session["DataTable"]=value; }
  • }
  • public MySqlConnection Connection
  • {
  • get{return (MySqlConnection)Session["Connection"]; }
  • set{ Session["Connection"]=value; }
  • }
  • public MySqlDataAdapter Adaptateur
  • {
  • get{ return (MySqlDataAdapter)Session["Adaptateur"]; }
  • set{ Session["Adaptateur"]=value; }
  • }
  • }
  • // Appel dans n'importe quel page
  • ...
  • protected Util ut = new Util();
  • ...
  • if (!Page.IsPostBack)
  • {
  • try
  • {
  • ut.DataTable.Reset();
  • ut.Adaptateur.SelectCommand = new MySqlCommand("Select * FROM manager;", ut.Connection);
  • //DataGrid1.DataSource=ut.DataTable.DefaultView; // Mauvaise méthode.C'est ici que le problème survient!!!
  • DataGrid1.DataSource=new DataView(ut.DataTable); // Et voici la solution!!!
  • DataGrid1.DataBind();
  • }
  • catch (Exception excp)
  • {
  • Label1.Text="Erreur!!!\r\n" + excp.ToString();
  • }
  • }
  • ............................
  • private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
  • {
  • DataGrid1.CurrentPageIndex=e.NewPageIndex;
  • DataGrid1.DataSource = DataGrid1.DataSource=new DataView(ut.DataTable);
  • DataGrid1.DataBind();
  • }
// Création de la variable de session
  public class Util : System.Web.UI.Page
  {
    public DataTable DataTable
    {
      get{ return (DataTable)Session["DataTable"]; }
      set{ Session["DataTable"]=value; }
    }
    public MySqlConnection Connection
    {
      get{return (MySqlConnection)Session["Connection"];  }
      set{ Session["Connection"]=value; }
    }
    public MySqlDataAdapter Adaptateur
    {
      get{ return (MySqlDataAdapter)Session["Adaptateur"]; }
      set{ Session["Adaptateur"]=value; }
    }
  }
// Appel dans n'importe quel page
...
   protected Util ut = new Util();
...
      if (!Page.IsPostBack)
      {
        try
        { 
          ut.DataTable.Reset();
          ut.Adaptateur.SelectCommand = new MySqlCommand("Select * FROM manager;", ut.Connection);
          //DataGrid1.DataSource=ut.DataTable.DefaultView; // Mauvaise méthode.C'est ici que le problème survient!!!
          DataGrid1.DataSource=new DataView(ut.DataTable); // Et voici la solution!!!
          DataGrid1.DataBind();
        }
        catch (Exception excp)
        {
          Label1.Text="Erreur!!!\r\n" + excp.ToString();
        }
      }

............................

    private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
    {
      DataGrid1.CurrentPageIndex=e.NewPageIndex;
      DataGrid1.DataSource = DataGrid1.DataSource=new DataView(ut.DataTable);
      DataGrid1.DataBind();
    }

 Conclusion

Voila pour toutes réflexions ou erreurs n'hésiter pas surtt

Pis ca fait des révisions pour utiliser les variables de session, les datagrid et le paging

En espérant que ca est servi.


 Sources du même auteur

Source avec une capture Source .NET (Dotnet) CALENDAR POPUP CUSTOMISÉ POUR DEMI JOURNÉE
Source .NET (Dotnet) LISTER TOUS LES CONTROLS D'UNE PAGE

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) GUESTBOOK AVEC GRIDVIEW par DanMor498
Source avec Zip CHECKED DROPDOWNLIST par fredzool
Source avec Zip Source avec une capture Source .NET (Dotnet) GRIDVIEW WITH TREEVIEW AND CALLBACK par fredzool
Source avec Zip APPELLER UN WEBSERVICE DEPUIS JAVASCRIPT par fredzool
Source avec Zip Source .NET (Dotnet) MONEY TEXTBOX WITH EMBEDED JAVASCRIPT par fredzool

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) PAGINATION CONTRÔLE REPEATER ASP.NET AVEC UN DATASET par fabienfs
Source .NET (Dotnet) UTILISATION DES DATATABLES ET L'AFFICHAGE DU CONTENU DANS UN... par hedi_tounsi
Source avec Zip Source avec une capture Source .NET (Dotnet) UTILISATION D'UN DATASET par ManuAntibes
Source .NET (Dotnet) GÉNÉRATION D'UN XML À PARTIR D'UNE BDD ACCESS par fabienfs
Source .NET (Dotnet) METTRE EN CACHE SUIVANT UN PARAMÈTRE PERSONALISÉ par jesusonline

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

DataSet,DataTable...pfff... [ par vbtom ] Salut,Bah je me met à ASP.Net et je doit bien avouer que tous ces DataSet,DataTables.... ca me lourde dpask jy comprend rien Donc si une ame charitabl multiplier var de session par requete sql [ par Boukachaka ] Bonjour,j'ai le code suivant qui rempli mon datatable avec des variables de sessions, là où j'ai mis ici, je voudrais mettre comme valeur le résultat Dataset et xml [ par sboutorine ] Bonjour, J'aimerais savoir comment il est possible de récupérer une ou plusieurs lignes d'un datatable quand le champs à interrogé Requete dans datatable ou dataset [ par Byrong ] Bonjour, J'aimerais qu'une requete complexe soit stocker dans un dataset ou datatable afin de pouvoir la traiter plus facilement et pouvoir ainsi aff Stockage en session ou pas ? [ par zigxag ] Bonjour !j'ai une petite question, pour avoir votre avis...Dans la page 1, je rempli un GridView grace à une DataTable, que je stocke ensuite en sessi variables de session [ par janineinfo ] bonjour tt le monde,Je veux des aides et explications à propos des variables de sessions en asp.net 2003merci d'avance variable de session [ par janineinfo ] Salut,Comment fonctionne les variable de session en asp.net 2003?par exemple : si un client creé un compte ds ton site et  on veut que son login appar Problème d'enregistrement de variables de session [ par jmmontes ] Bonjour, J'ai un site installé sur un ordinateur Windows XP sur un domaine. Je m'y connecte de 2 manières sur le poste XP qui fait office de serveur Problème d'enregistrement de variables de session [ par jmmontes ] Bonjour, J'ai un site installé sur un ordinateur Windows XP sur un domaine. Je m'y connecte de 2 manières sur le poste XP qui fait office de serveur laisser en mémoire une application pendant toute la durée d'une session [ par furet123302 ] Bonjour, Je suis à la recherche d'une méthode pour laisser un .exe en mémoire pendant toute la durée d'une session. Savez-vous comment je pourrais r


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,884 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales