Générer un DataSet Typé

Résolu
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 - 9 août 2007 à 22:26
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 - 10 août 2007 à 10:46
Bonsoir,
existe t'il une classe permettant de générer un DataSet typé dans le framework ?

je sais qu'il existe un fichier Xml qui lorsque l'on saisit les differentes "entités" celles ci sont converties automatiquement avec le code C# généré (je me souviens même plus quel schéma c'etait)

mais ce que je cherche c'est carrement une classe .. mieux qui contient une méthode que l'on appelle en passant ce dont il a besoin pour générer un DataSet typé
j'ai vu qu'il y avait une classe TypeddatasetGenerator dans le namespace System.Data je ne sais pas si cela fait ce que je voudrais :p ?

merci
++

Se poser les bonnes questions ;) 
apporter les réponses

6 réponses

romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
9 août 2007 à 23:34
Bon j'ai une premiere version j'utilise TypedDataSetGenerator de  System.Data.Design (System.Design.dll) finalement car l'autre est obsolete (quoique c'est quasiment la même chose)

mais actuellment cela ne me génére que le fichier Designer.cs et pas le schéma xsd correpondant donc le dataset typé est incomplet !! une idée ?

si je réussis je ferais peut etre un petit code snippet pour codyx :)

public

void Generate(
string path,
string Namespace){

DataSet dataSet =
new
DataSet();
dataSet.ReadXml(path);

CodeDomProvider codeDomProvider =
new
CSharpCodeProvider();

CodeNamespace codeNamespace =
new
CodeNamespace(Namespace);

using (
TextWriter textWriter =
new
StreamWriter(
Path.ChangeExtension(path,
".Designer.cs"),
false,
Encoding.Default))
{
System.Data.Design.
TypedDataSetGenerator.Generate(dataSet, codeNamespace, codeDomProvider);
codeDomProvider.GenerateCodeFromNamespace(codeNamespace, textWriter,
null);
}
}

Se poser les bonnes questions ;) 
apporter les réponses
3
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
9 août 2007 à 23:54
Bon en utilisant  simplement

dataSet.WriteXmlSchema(

Path.ChangeExtension(path,
".xsd"));

ca passe à peu pret

je vais voir s'il y a pas moyen d'arranger tout ca

Se poser les bonnes questions ;) 
apporter les réponses
3
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
9 août 2007 à 23:57
Bon dites moi si vous etes interessés par un snippet sur codyx sans cela hop :p

Se poser les bonnes questions ;) 
apporter les réponses
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
10 août 2007 à 09:19
Bah si ça peut servir à qqn, un snippet peut toujours valoir la peine

<hr />
-Blog-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
10 août 2007 à 10:35
Salut
sauriez vous ou on peut trouver le schema xsd correspondant au dataset ?
(namespace xmlns:msdata="
urn:schemas-microsoft-com:xml-msdata")

en fait le DataSet typé à utiliser pour le web n'est pas le même (il dispose de methodes delete,insert tout a fait pratiques pour se brancher dessus depuis les datasources)

++

Se poser les bonnes questions ;) 
apporter les réponses
0
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
10 août 2007 à 10:46
arf j'ai peut etre trouver en ouvrant dans visual studio en mode "texte" un dataset (le xml)
visual studio repere l'ensemble des schemas du document xml

Se poser les bonnes questions ;) 
apporter les réponses
0
Rejoignez-nous