Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Xml, Xsd et affichage dans un DataGrid [ Archives / Base de données ] (cfz)

mercredi 1 février 2006 à 15:51:25 | Xml, Xsd et affichage dans un DataGrid

cfz

Bonjour,
N'ayant jamais utilisé de DataSet, DataGrid & co je suis un peu perdu (en fait j'ai installé Visual Studio depuis un peu plus d'une semaine...)

Contexte :
J'ai une base Xml dans laquelle je stoque les textes à afficher dans mon application dont voici la structure générale :
Fichier ConstLangues.Xml :
<?xml version="1.0" encoding="utf-8"?>
<
Langues>
   <
Constante Name="NomAppli" Category="Génériques">
      <
Francais>Gestionnaire de planning saisonnier</Francais>
      <
Anglais>Manager of seasonal planning</Anglais>
   </
Constante>
   <
Constante Name="CréationFiche" Category="Action sur des Fiches">
      <
Francais>Création d'une Fiche</Francais>
   </
Constante>
</Langues>

Après avoir fait quelques recherches sur le net j'ai décidé de créer un petit outil qui me permettrait de gérer ce fichier Xml à l'aide d'une petite application interne. J'ai donc opté pour afficher le résultat dans un DataGrid... et si j'ai bien compris il me faut alors passer par un DataSet et un schéma Xsd. J'ai d'ailleur trouver un bon tutorial expliquant ce qu'il faut faire pour créer un schéma Xsd, mais le problème c'est que je n'arrive pas à le connecter à mon fichier Xml (il me propose une connection vers SQL Server ou Access seulement)...
Url du tutorial :
http://www.labo-dotnet.com/Articles/Csharp/Base%20de%20données%20XML%20avec%20dotNET/Shéma%20XSD%20%20structure%20de%20la%20base/1/166.aspx

Question :
Je me pose donc deux questions :
 - comment créer un schéma Xsd associé à mon fichier Xml?
 - est-ce que ma base Xml est bien adaptée à ce que je veux faire (sachant que je souhaite pouvoir trier l'affichage par 'Category'
Exemple d'affichage :
Category                              Name                     Francais                           Anglais
Action sur des Fiches       CréationFiche      Création d'une Fiche      null

Merci d'avance++

mardi 28 février 2006 à 17:40:59 | Re : Xml, Xsd et affichage dans un DataGrid

ratsimisampy

salut, je ne sais pas si tu as résolu ton problème vu q ça ton message date dy a un mois mais tant pis,

Je pense qu'il suffit de bien regarder sur le MSDN, en faisant une recherche une recherche sur la methode read.xml ou autrement voici un bout du code:

string path = "toncheminfichier.xml" ;
tondataset.readxml(path) ;
tondatagrid.datasource = tondataset ;

-tu n'as donc pas besoin de créer le schéma de ta base puisque la methode readxml se charge de lire directement ce schéma a partir de ton xml.

quant à moi, je voudai personaliser mon affichage à partir des données récupérées de mon fichier xml
par exemple, ne pas afficher tous les noeuds, ou rajouter une colonne total_commandes,etc...

je me pose également deux questions:

1/ dois-je forcément exporter mes données dans un sgbd pour pouvoir manipuler celles-ci?

2/ supposons que oui, quelle méthode dois je adapter svp?

R2R.



mercredi 8 mars 2006 à 14:43:51 | Re : Xml, Xsd et affichage dans un DataGrid

cfz

Bonjour,
En effet, je n'ai pas besoin de créer de schéma... heureusement paske je ne sais toujours pas de quoi il s'agit...
Tu trouveras une partie de réponse à tes question sur
http://www.csharpfr.com/codes/TRAVAIL-SUR-BASES-DONNEES-DATASETS-FICHIERS-XML_18428.aspx

J'en profite également pour donner le code qui m'a permit de résoudre mon problème, peut-être que ça te donnera des idées :

Document Xml :

<Langues>
   <
Constante Name="AppliName" Category="G‚n‚riques" ConstanteName="AppliName">
      <
Francais>Nom de l'application</Francais>
      <
Anglais>Application name</Anglais>
   </
Constante>
</Langues>

Code source :

DataGridTableStyle DgStyle;
DgStyle =
new DataGridTableStyle();
DgStyle.AllowSorting =
true;

DataGridColumnStyle dgColStyle = new DataGridTextBoxColumn();
dgColStyle.HeaderText =
"Nom de la constante";
dgColStyle.MappingName = "Name";
dgColStyle.Width = 150;
DgStyle.GridColumnStyles.Add(dgColStyle);
...
dgColStyle = new DataGridTextBoxColumn();
dgColStyle.HeaderText =
"Français";
dgColStyle.MappingName = "Francais";
dgColStyle.Width = 200;
DgStyle.GridColumnStyles.Add(dgColStyle);
dgColStyle =
new DataGridTextBoxColumn();
dgColStyle.HeaderText =
"Anglais";
dgColStyle.MappingName = "Anglais";
DgStyle.GridColumnStyles.Add(dgColStyle);
dgColStyle.Width = 200;
dgColStyle =
null;

DgStyle.MappingName =
"Constante";
DataSetLangues.ReadXml(sPathDocumentXml);
DataView DV=DataSetLangues.Tables["Constante"].DefaultView;
DataGridLangues.DataSource = DV;
DataGridLangues.TableStyles.Clear();
DataGridLangues.TableStyles.Add(DgStyle);

Voilà, j'espère que tu trouveras réponse à ta solution...
d'ailleur je n'ai pas réussi a en faire de même lorsque le document Xml est plus complexe
Exemple :
Afficher trois colonnes (Identifiant, Titre et City de RentalCard) dans un DataGrid du document Xml suivant :

<UserName Name="">
   <
RentalCard Identifiant="" LocalIdentifiant="">
      <
Title></Title>
      <
Address>
         <
Street></Street>
         <
City></City>
         <
PostalCode></PostalCode>
         <
Altitude></Altitude>
      </
Address>
   </RentalCard>
</
UserName>

En effet, d'une part il me met un symbole "+" me permettant d'ouvrir les sous-noeud, et d'autre par je n'arrive pas à afficher City (j'ai essayer de mettre dans Mapping "City" et "Address/City", mais ca ne marche pas)... si quelqu'un a une solution...



jeudi 9 mars 2006 à 09:14:46 | Re : Xml, Xsd et affichage dans un DataGrid

ratsimisampy

idée pour te faciliter la tache au lieu de saisir tout ce code à la main, et resoudre ta dernière question.

mets toi en mode design pour afficher la fenetre de propriété de ton datagrid, clique sur la prop TableStyles
>Ajouter , prop MappingName = le nom de ton premier noeud correspondra à ta 1ere table. etc pour les noeuds fils suivant...
>propriétéGridColumnStyles
Ajouter , ajoute les col que tu veux afficher et leur propriété

RRR

jeudi 9 mars 2006 à 09:25:24 | Re : Xml, Xsd et affichage dans un DataGrid

ratsimisampy

merci pour le lien, qui constitue un briefing très utile.

RRR



Cette discussion est classé dans : fichier, datagrid, affichage, xml, xsd


Répondre à ce message

Sujets en rapport avec ce message

Gérer du xml à travers un datagrid [ par Januka ] Bonjour,j'ai un pb avec un fichier xml que j'aimerais gérer au travers d'une interface, au lieu d'éditer le fichier et le compléter dans un fichier te Synchronisation d'un DataSet avec un XmlDataDocument [ par jimbz ] Chers 'pros' du C#.NET, j'ai besoin de vous. Personnellement je suis amateur et je viens de me lancer ds le C# qui offre (offrira quand je maitriserai Gestion xml dans DataGrid [ par Januka ] Bonjour,je souhaiterais gérer un fichier xml au travers d'un datagrid.Je crée donc un Dataset, dans lequel je mets les infos du fichier xml, puis j'at [c#] Validation XSD imbriqués [ par muvperrin ] bonjour à tous je dois valider un fichier xml en fonction de son fichier xsd puis remplir un dataset avec ce fichier xml ... j'ai réussi la validati Problème XML/XSD [ par granghon ] Bonjour,Je ne suis pas sur de poser ma question sur le bon thème mais c'est celui qui à mon goût s'en rapproche le plus.J'utilise un fichier XML pour Datagrid et plusieurs fichiers XML [ par sergio297 ] Salut a tous,Je debute avec C#.NET, merci d'etre indulgent...J'ai un certain nombre de fichiers XML dont la structure est la meme. Mon but est de cree Vérifier la syntaxe d'un xml avec un xsd [ par t_barbillon ] Salut, Est ce qu'il y a un moyen de verifier la syntaxe d'un fichier xml à partir d'un fichier xsd ? label link dans une datagrid [ par titi66 ] bonjourJ'ai stocké dans un fichier xml des chemins complet  vers des fichiers, ainsi que d'autres infos.Je charge mon fichier xml dans une data grid e typage de données dans XSD [ par ratsimisampy ] salut à tous, voilà, je voudrai charger un fichier xml dans ma base access et ensuite afficher les données dans mon datagrid. pour tout ça, je nai pa XML : fichier wsdl et fichier xsd??? [ par yanis7518 ] Salut a tous,Voila je dois parser un fichier XML afin de recuperer des données. Cependant lorsque je le parse a l'aide de la classe XPATH ce dernier s


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,265 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.