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 :

[CF] Implémenter IDataReader


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut [CF] Implémenter IDataReader
    Bonjour,

    j'ai un xml "maison" qui contient le (ou les, les car si j'exécute une procédure stockée je peux en récupérer plusieurs) résultats de la requête que j'envoi via une IDbCommand.

    J'aimerai donc implémenter l'interface IDataReader dans une classe qui transforme mon XML (et donc mes différents resultsets) en objet mais je ne sais pas du tout comment m'y prendre.

    Comment implémenter cette interface?

    J'avais pensé charger le XML dans un DataSet via la méthode Load mais je ne sais pas du tout comment cela fonctionne, donc si vous avez des idées...

    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Bonjour

    Tu peux préciser ? car dans ton titre, tu mets "CF", je suppose que c'est pour Compact Framework. Or, si tu utikises le Compact Framework, je ne vois pas quel base de données supportant les proc stoc tu utilises (en effet, Sql Server Ce ne supporte pas les proc stoc).

  3. #3
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Bonjour,

    CF = Compact Framework.

    Le SGBD utilisé est Sybase ASE.

    J'ai développé un utilitaire UNIX qui prend en entrée un flux XML avec la requête à exécuter et me retourne le résultat sous forme XML également.

    J'ai donc implémenter l'interface IDbConnection et IDbCommand de sorte à faire transiter mes requêtes via Socket et je cherche donc à implémenter l'interface IDataReader de manière à faire un IDbCommand.ExecuteQuery() de manière totalement transparente.
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Arnaud F. Voir le message
    Bonjour,

    CF = Compact Framework.

    Le SGBD utilisé est Sybase ASE.

    J'ai développé un utilitaire UNIX qui prend en entrée un flux XML avec la requête à exécuter et me retourne le résultat sous forme XML également.

    J'ai donc implémenter l'interface IDbConnection et IDbCommand de sorte à faire transiter mes requêtes via Socket et je cherche donc à implémenter l'interface IDataReader de manière à faire un IDbCommand.ExecuteQuery() de manière totalement transparente.
    Désolé, mais peux tu expliquer la finalité de cela.
    Si je comprends bien ton besoin (ce dont je ne suis pas absolument convaincu) tu veux exécuter du Sql et retourner du Xml.

    Là où je ne comprends pas du tout, c'est pour quelle raison as tu fait cela plutôt que de connecter directement ta base de données via RDO ? en clair, si je comprends à peu près ta demande technique, je ne comprends pas ton besoin fonctionnel qui, a première vue ( mais je dit bien à première vue) ressemble un peu la réinvention de choses existantes.

  5. #5
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    Désolé, mais peux tu expliquer la finalité de cela.
    Si je comprends bien ton besoin (ce dont je ne suis pas absolument convaincu) tu veux exécuter du Sql et retourner du Xml.
    Ce que je souhaite est juste avoir un accès la base de données, le compact framework n'embarquant pas les pilotes ODBC requis. Mais la question n'est pas là car je l'avais déjà posée précédemment et les réponses n'étaient pas appropriées ou tout du moins ne me permettait pas de réaliser ce que je souhaite faire.

    Citation Envoyé par Bluedeep Voir le message
    Là où je ne comprends pas du tout, c'est pour quelle raison as tu fait cela plutôt que de connecter directement ta base de données via RDO ? en clair, si je comprends à peu près ta demande technique, je ne comprends pas ton besoin fonctionnel qui, a première vue ( mais je dit bien à première vue) ressemble un peu la réinvention de choses existantes.
    RDO? Il y a très, très peu de documentation dessus.


    Ma question reste générale néanmoins (mon problème de SGBD mis à part), car si une interface est fournie c'est pour qu'on puisse avoir la possibilité de l'implémenter.
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Arnaud F. Voir le message
    Ma question reste générale néanmoins (mon problème de SGBD mis à part), car si une interface est fournie c'est pour qu'on puisse avoir la possibilité de l'implémenter.
    Les destinataires primaires de ces interfaces sont les editeurs de SGBD pour qu'ils puissent justement réaliser leurs connecteurs .Net.

    L'autre utilité de ces interfaces est de faciliter l'implémentaton de couches d'accès donnée indépendantes des SGBD.

Discussions similaires

  1. Réponses: 12
    Dernier message: 01/07/2004, 11h03
  2. Réponses: 8
    Dernier message: 04/06/2004, 09h13
  3. Moteur physique : comment l'implémenter ?
    Par haypo dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 17/12/2003, 12h56
  4. Réponses: 2
    Dernier message: 06/07/2002, 12h36
  5. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 16h19

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