p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Expert Confirmé Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    février 2010
    Messages
    2 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2010
    Messages : 2 381
    Points : 3 737
    Points
    3 737

    Par défaut Entity Framework ou codage à la main ?

    Bonjour,

    J'ai une vision très "vivante" des bases de données.

    Entity Framework me semble un peu "figé" comme approche, dans le sens où du code "en dur" est généré une bonne fois pour toute à partir de la base de données utilisée.

    On se retrouve (pour simplifier) avec un objet par table, et toutes les méthodes nécessaires pour travailler dessus. C'est donc un gros gain de temps en termes de développement.

    En revanche, que se passe-t-il lorsqu'on ajoute une table au modèle ? Ou qu'on ajoute une colonne à une table ?

    Entity Framework est-il capable de modifier dynamiquement les objets, ou faut-il recompiler le programme ?

    En effet, j'ai pour habitude de créer des objets génériques d'accès aux données, que je peux créer dynamiquement à partir de fichiers XML décrivant la base de données, ou directement à partir des métas de la base de données.

    Ainsi, si je crée une nouvelle table de type "liste" par exemple, au redémarrage de mon programme, de nouveaux objets sont disponibles pour administrer cette nouvelle table.

    Est-ce possible de reproduire ce comportement avec Entity Framework ?

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    février 2004
    Messages
    19 560
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    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 560
    Points : 40 119
    Points
    40 119

    Par défaut

    Citation Envoyé par StringBuilder Voir le message
    Entity Framework me semble un peu "figé" comme approche, dans le sens où du code "en dur" est généré une bonne fois pour toute à partir de la base de données utilisée.
    Ca c'est l'approche "database first", mais il y a d'autres approches : code first, model first, où la base est générée à partir du code ou du modèle

    Citation Envoyé par StringBuilder Voir le message
    En revanche, que se passe-t-il lorsqu'on ajoute une table au modèle ? Ou qu'on ajoute une colonne à une table ?
    Tu mets à jour le modèle et tu recompiles

    Citation Envoyé par StringBuilder Voir le message
    Entity Framework est-il capable de modifier dynamiquement les objets, ou faut-il recompiler le programme ?
    Il faut recompiler, mais de toutes façons je ne vois pas trop quel serait l'intérêt de prendre en compte la nouvelle table sans recompiler, puisque ton programme ne saurait pas l'utiliser...

    Un des principaux avantages d'utiliser un ORM est d'avoir des objets fortement typés pour manipuler tes données. Mais si tu as besoin de quelque chose de suffisamment générique pour manipuler des tables que tu ne connais pas à l'avance, le typage fort ne t'apporte plus rien puisque tu ne connais pas le type à l'avance... Dans ce cas autant utiliser des DataSet/DataTable ou des requêtes SQL dynamiques

  3. #3
    Expert Confirmé Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    février 2010
    Messages
    2 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2010
    Messages : 2 381
    Points : 3 737
    Points
    3 737

    Par défaut

    Merci pour ces précisions.

    J'hésite justement entre typage fort et typage générique.
    Les deux ont leurs avantages et inconvénients, mon coeur balance

Discussions similaires

  1. ADO.NET Entity Framework, Astoria, Silverlight -> .NET 3.5 ?
    Par rad_hass dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 08/07/2008, 16h01
  2. version final d'Entity framework
    Par korchimustapha dans le forum Général Dotnet
    Réponses: 8
    Dernier message: 04/07/2008, 17h21
  3. éditeur wysiwyg ou codage à la main
    Par apqmwnqmap dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 11/04/2008, 17h38
  4. [ADO.NET Entity Framework] génération des tables
    Par anthyme dans le forum Accès aux données
    Réponses: 3
    Dernier message: 22/02/2008, 17h44
  5. Linq - Entity Framework
    Par Jfrancois57 dans le forum Framework .NET
    Réponses: 11
    Dernier message: 12/02/2008, 08h06

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