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

Silverlight Discussion :

Aller un peu plus loin dans l'accès aux données à partir de Silverlight


Sujet :

Silverlight

  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Points : 674
    Points
    674
    Par défaut Aller un peu plus loin dans l'accès aux données à partir de Silverlight
    Bonjour tout le monde.

    Je viens de voir le post précédent concernant l'accès aux données depuis silverlight.
    Je me pose le même genre de questions, mais de façon un peu plus large. Je dois développer une application silverlight orientées données.

    Comme DAL, j'ai pensé à Entity Framework, mais là n'est pas mon problème. Mon principal problème est le choix de la couche intermédiaire: le transport de données, mais surtout la mise à jour/répercussion ensuite.

    Le problème est qu'il va falloir que je supporte tous les cas de figure. Pas simplement la lecture de données, mais:
    • la mise à jour simple d'une entité
    • la création de nouvelles entités
    • la suppression d'entités
    • la mise en place de liens entre les entités


    De plus j'ai des contraintes de "lazy loading": je ne veux pas charger l'ensemble des données si ce n'est pas nécessaire (genre d'écran liste/détails).

    J'ai commencé par essayer ADO .NET data services (suite au bouquin "Data driven Serviceswith Silverlight 2" qui est pas mal d'ailleurs) pour accéder à mes entités EF. J'ai rapidement réussi à trouver des exemples simples et j'ai réussi à jeter les prémices d'une application simple gérant même le lazy loading.

    Ensuite où les choses se gâtent c'est pour remettre à jour le DataServiceContext. Pour une mise à jour d'un champ, pas trop de problèmes, mais dans un cas de mix entre suppression+ajout+modification de champ+mise à jour de lien vers une autre entité, ça devient ingérable.

    Je cherche donc un exemple plus complet de gestion des reports des modifications vers le DataServiceContext.

    Sinon, je suis aussi ouvert à toute autre piste, même du style services WCF + EF derrière... Par contre, je suppose qu'il va falloir que je gère plus ou moins le même mécanisme.

    Des idées?? Ou surtout des exemples??

    Merci
    Christophe

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Pourquoi pas tout simplement EF + WCF, le lazy loading étant fait par EF ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Points : 674
    Points
    674
    Par défaut
    Merci pour ta réponse.

    Effectivement, comme je l'ai dit, c'est une possibilité que je suis en train d'étudier. Par contre ça ne change en rien mon problème fondammental.
    Il va bien falloir que je gère les modifications et que je les reporte dans l'EF à ce moment là. Que j'utilise l'EF à travers ado .net data services ou non, il me faudra stocker tous les changements et les répercuter au moment ou l'utilisateur choisira de tout sauvergarder.
    Avec astoria, il faudra que je mette à jour le "dataseervicecontext", et dans le cas de l'EF à travers WCF, le "context" (plus ou moins de la même manière).

    En fait, c'est plus une question d'architecture que je me pose. Comment organiser tout cela pour pouvoir répercuter facilement mes changements dans le context ou dataservicecontext?

    Christophe

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    C'est à toi de faire les méthodes d'ajout/suppression/modification qui vont utiliser le context EF et qui seront exposées à Silverlight via WCF.

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Points : 674
    Points
    674
    Par défaut
    Oui je sais bien. Mais je cherche une idée/un exemple d'architecture. Un adaptateur au dessus de chaque entité... autre???

    Les exemples que j'ai pu trouver sont simplistes: read/update d'un champ...

    Sinon, j'ai pensé à utiliser Persistence Ignorance (POCO) Adapter, mais je ne sais pas ce que ça vaut.

    Christophe

Discussions similaires

  1. Acces aux données à partir des thread
    Par mastok007 dans le forum Threads & Processus
    Réponses: 2
    Dernier message: 15/01/2014, 22h06
  2. De plus en plus loin dans les scripts
    Par GAEREL dans le forum BIRT
    Réponses: 2
    Dernier message: 06/04/2011, 16h49
  3. Aller un peu plus loin avec sed..
    Par ghostrider95 dans le forum Shell et commandes GNU
    Réponses: 19
    Dernier message: 13/02/2011, 17h42

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