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

C# Discussion :

Générer un dataset automatiquement


Sujet :

C#

  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2008
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 118
    Par défaut Générer un dataset automatiquement
    Bonjour,

    Je désire faire un outil qui me génère les classes d'un DataSet (datatable, dataadapter etc...).

    Plus exactement, je voudrais qu'il me génère les 4 fichiers suivant :
    • MaTableDataSet.xsd
    • MaTableDataSet.Designer.cs
    • MaTableDataSet.xsc
    • MaTableDataSet.xss


    Je n'ai qu'une table à "déposer" sur le DataSet. Cependant, je souhaiterais que le "drag and drop" de la table depuis le Server Explorer sur le DataSet soit aussi fait automatiquement.

    Grosso modo, j'aurais besoin d'une méthode du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    GenereDataset(
      string ChaineConnexion, // Chaine de connexion de la base de données
      string NomDeLaTable,  // Nom de la table en base de données
      string Chemin, // Chemin ou générer les fichiers
      string NomDuFichier); // Préfixe des noms des fichiers générés
    Quelqu'un aurait des pistes pour savoir comment faire cela ?

    Merci d'avance.

    Sybaris

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2008
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 118
    Par défaut
    Bonjour,

    J'ai vu que l'utilitaire xsd.exe générait ces fichiers, mais il demande en entrée un fichier xml.
    Or moi ma source de données est une table d'une base de données.

    Comment je peux à partir d'un nom de table et de ma chaine de connexion faire en sorte d'avoir ce que désire en entrée xsd.exe ?

    Merci d'avance

    Sybaris

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2008
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 118
    Par défaut
    Bonjour,

    Bon j'ai un peu avancé sur la question.
    Voici un bout de code qui me génère un fichier xsd depuis une table de ma base de données.
    Ce fichier xsd, je peux ensuite le passer à l'utilitaire xsd.exe qui me génère le fichier designer.cs associé.

    Par contre, je n'arrive pas à faire générer dans le fichier xsd les informations pour les table adapter.

    Si quelqu'un sait comment faire, je suis preneur...

    Sybaris

    PS : Voici le lien qui m'a aidé : http://support.microsoft.com/kb/317940

    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
    16
    17
    18
    19
    20
    21
    22
    23
            public static void GenerateXsd(string aConnectionString, string aTableName, string aPathDestination,string aNameSpace, string aDataSetName)
            {
                SqlConnection sqlConnection = new SqlConnection(aConnectionString);
                SqlDataAdapter dataAdapter = new SqlDataAdapter("Select * from " + aTableName, sqlConnection);
                DataSet ds = new DataSet();
                try
                {
                    ds.DataSetName = aTableName;
     
                    ds.Namespace = aNameSpace;
                    dataAdapter.FillSchema(ds, SchemaType.Source, aTableName);
     
                    string filename = Path.Combine(aPathDestination, aTableName + ".xsd");
                    ds.WriteXmlSchema(filename);
                    Console.WriteLine("The XSD schema is written to " + filename);
     
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                //Console.ReadLine();
            }

Discussions similaires

  1. générer un pdf automatiquement
    Par andreditdd dans le forum Rave
    Réponses: 1
    Dernier message: 20/02/2007, 09h33
  2. Générer un état automatiquement
    Par antoine46 dans le forum IHM
    Réponses: 1
    Dernier message: 09/09/2006, 15h05
  3. Générer des rochers automatiquement
    Par ymerej dans le forum Développement 2D, 3D et Jeux
    Réponses: 5
    Dernier message: 06/06/2006, 12h04
  4. [débutant] Problème pour générer un login automatiquement
    Par zamoto dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/05/2006, 20h12
  5. [OpenOffice][Texte] Comment générer la date automatiquement sur Openoffice.org ?
    Par wareq dans le forum OpenOffice & LibreOffice
    Réponses: 2
    Dernier message: 09/11/2005, 22h41

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