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

Accès aux données Discussion :

Problème création modèle de classe + Oracle datasource


Sujet :

Accès aux données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de mohe27
    Inscrit en
    Février 2007
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 112
    Par défaut Problème création modèle de classe + Oracle datasource
    Salut les amis,

    voilà je suis entrain de développer une application utilisant un projet MVC2 couplé avec une base de donnée Oracle, le souci que je rencontre est le suivant:
    quand j'essaye de créer un modèle de classe (voir le lien ci-dessous au niveau de la Figure3) lors du choix de la source de données, je mets "nouvelle connexion" et là parmis les choix affichés il n'y a que ceux de "Sql server" celui de Oracle n'existe pas.

    http://dotnet.developpez.com/mvc/mvc-entity-framework/

    pourtant Oracle data provider pour .net est installé et la référence vers Oracle.DataAccess Version=10.2.0.100 (j'utilise Oracle 10g), est appliquée.

    le test de connexion classique vers ma base Oracle fonctionne parfaitement seulement il n'est pas disponible quand j'essaye de créer un modèle de classe.

    est-ce qu'il y a un composant qui manque et que je dois installer ou bien une autre référence à rajouter peut-être? car je suis bloqué là

    j'utilise MVS 2008 SP1 avec MVC 2.0

    merci pour votre aide

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Le provider Oracle officiel n'est pas compatible avec Entity Framework. Le seul provider EF fourni avec le framework est celui pour SQL Server.

    Il existe des providers Oracle qui supportent EF (chez Devart par exemple), mais c'est payant...

    EDIT: apparemment Oracle a enfin commencé à se bouger le c** à ce sujet...
    http://www.oracle.com/technetwork/to...sod-130214.pdf

    Mais c'est pas pour tout de suite, ils parlent d'une beta pour fin 2010, et d'une version finale en 2011

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Par défaut
    effectivement il n'existe à ce jour que 2 connecteurs compatibles EF pour Oracle, et ils sont payants, et encore un des 2 est "moyennement" compatible, en gros l'interface intégré de VS tu t'assoies dessus...

    il te reste donc le connecteur Devart (Outils|Gestionnaire d'Extensions sous VS2010 pour le chercher et l'installer) qui s'intègre parfaitement à Visual studio en plus de fournir les connecteurs compatibles EF.

    De toute façon... si tu part sur Oracle c'est que tu es prêt à payer plein pot pour pas grand chose, c'est donc pas un connecteur payant qui va te faire peur enfin bon je dis ça je dis rien.

  4. #4
    Membre confirmé Avatar de mohe27
    Inscrit en
    Février 2007
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 112
    Par défaut
    Salut les amis,

    je vous remercie tous les deux pour cette information, et je trouve ça dommage qu'Oracle n'ait pas pensé à créer un connecteur pareil comme c'était le cas pour son ODAC pour .net, il faudra alors attendre sinon voir avec le boss s'il voudra se procurer celui de chez Devart, sinon passer sous Sql server.

    merci les amis

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par mohe27 Voir le message
    je trouve ça dommage qu'Oracle n'ait pas pensé à créer un connecteur pareil comme c'était le cas pour son ODAC pour .net
    Ben c'est pas qu'ils y ont "pas pensé" à mon avis, c'était plutôt un choix politique... Quoiqu'ils en disent dans leur communiqué, Oracle a toujours été assez réticent à fournir des outils pour .NET. Y a qu'à voir le provider ODP.NET actuel, il s'intègre relativement mal à cause d'une interprétation très personnelle du modèle ADO.NET 2... Notamment la gestion des transactions, ou le fait que les paramètres soient bindés par position et pas par nom par défaut, c'est super galère si tu codes en faisant abstraction du SGBD

    Citation Envoyé par mohe27 Voir le message
    sinon passer sous Sql server.
    Ben si j'ai le choix, je préfèrerai toujours utiliser SQL Server qu'Oracle, du moins pour des développement en .NET. L'intégration à Visual Studio est bien meilleure

  6. #6
    Membre confirmé Avatar de mohe27
    Inscrit en
    Février 2007
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 112
    Par défaut
    Dis moi tomlev,

    est-ce que je peux utiliser un Dataset comme modèle? je viens de faire un petit essai le drag and drop des tables se fait sans souci mais qu'en est-il des appels des differents champs de ses tables ??

    merci à toi

  7. #7
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Par défaut
    Le choix politique d'Oracle a empiré avec le rachat de Sun, du fait que Oracle est devenu propriétaire de Java ...

    La seule raison qui fait qu'ils se décident enfin à bouger est due uniquement au fait que la BDD Oracle soit en net recule face à SQL Server ces derniers temps, et qu'ils ne doivent leur survie, en terme de "succès" qu'aux infrastructures de BDD sous UNIX, sous Windows... la donne a bien changé.

    Offrir des outils pour DOTNET n'est donc pas une volonté politique, mais une nécessité, s'ils ne veulent pas perdre définitivement le marché, et voir toutes les BDD à haute volumétrie passer sous Windows Server & SQL Server, car de plus en plus les applicatifs commencent à se développer en DotNet pour l'utilisation sous Windows.

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par mohe27 Voir le message
    est-ce que je peux utiliser un Dataset comme modèle ?
    Tu peux, mais perso je suis pas fan... d'abord, il faut bien comprendre que ça n'a pas grand chose à voir avec un ORM comme Entity Framework. Tu charges les données dans le DataSet avec des DataAdapters, tu travailles dessus, et quand tu as fini tu mets à jour la base avec les DataAdapters. C'est nettement moins pratique... En plus tu n'as pas de contrôle sur les noms des classes et méthodes générées, et les noms par défaut sont assez peu pratiques.

    En fait, le modèle généré est beaucoup trop lié au mode de fonctionnement du DataSet pour pouvoir en faire abstraction facilement, alors qu'avec EF tu peux déclarer toi-même tes classes POCO et les mapper au modèle.

    D'autre part, EF permet de convertir directement des requêtes Linq en requêtes SQL, ce qui n'est pas possible avec les datasets...

    Bref, si tu veux vraiment utiliser Oracle ET que tu as besoin d'un ORM, oriente toi plutôt vers NHibernate (mais c'est assez imbitable), ou alors utilise le provider EF de Devart...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème Création BDD Oracle 9i
    Par artatnas dans le forum Installation
    Réponses: 1
    Dernier message: 27/07/2007, 13h40
  2. problème de diagramme de classes ou de modèle relationnel
    Par maraly dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 05/03/2007, 16h42
  3. Problème création New Java Class
    Par karl3i dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 09/01/2007, 08h17
  4. [RMI] problème Création *_stub.class et *_skel.class
    Par philobedo dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 29/05/2006, 20h03

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