locked
Comment faire pour faire ne plus afficher les clès étrangères d'une table dans une datagrid, sachant que j'utilise EF4 et DomainServiceClass ? RRS feed

  • Question

  • Bonjour,

    J'utilise Visual Studio 2010 depuis peu. J'ai suivi le webcast de David Rousset sur la création d'un projet BUSINESS APPLICATION. En utilisant EF4 et Domainserviceclass pour l'acces aux données et l'exposition des données, tout marche ! Mais j'arrive pas à utiliser le lazyloading de EF4. Par exemple : je rempli une datagrid de Livre (IdLivre, TitreLivre, IdProprietaire), je ne veux pas afficher IdProprietaire mais NomProprietaire. Sachant EF4 m'a bien rapatrié dans l'objet LIVRE la propriété de naviguation PROPRIETAIRE, mai qui n'est pas chargé. Ce qui fait dans ma datagrid, quand je "BIND" PROPRIETAIRE.NomProprietaire ça n'affiche rien, alors qu'on me dit qu'avec EF4 le lazyloading est automatiquement à true.

    Voilà, en esperant que vous ayez compris mon problème

    Merci, cordialement.

    samedi 17 juillet 2010 04:48

Réponses

  • Non, pas trop ! Mais il m'a repondu et c'est dejà beaucoup ! Par contre, sur d'autre forum il m'ont parlé d'utiliser la méthode include dans ma classe Domainservice quand je charge mes données et ça marche!

    Merci !

    • Marqué comme réponse Alex Petrescu jeudi 22 juillet 2010 07:48
    mercredi 21 juillet 2010 21:16

Toutes les réponses

  • Bonjour,

    J'ai du mal à vous comprendre. Oui par définition le LazyLoading est true, donc il est normal que PROPRIETAIRE.NomProprietaire soit vide...

    Deuxio, la clef étrangère IdProprietaire s'affiche parce que c'est un champ et que c'est comme ca avec EF4. Si vous ne voulez pas l'afficher, je vous suggère ce lien: http://msdn.microsoft.com/fr-fr/library/cc903950(VS.95).aspx

     

    Cordialement


    Philippe
    lundi 19 juillet 2010 08:23
  • Bonjour,

     

    Victor, est-ce que la réponse de PhilTheGap vous a été utile ?

     

    Cordialement,

    Alex

    ________________

    Publiez un article sur une de ces technologies : Visual Basic, C#, C++, .NET, ASP.NET, SQL Server, Silverlight, SharePoint 2010, SharePoint 2007

    Astuces pour Visual Studio 2010

    Didacticiels et astuces : VB.NET, C#, ASP.NET, .NET Framework, Silverlight, Workflow Foundation, WPF

    Café des usages

    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

     

     

    mercredi 21 juillet 2010 09:35
  • Non, pas trop ! Mais il m'a repondu et c'est dejà beaucoup ! Par contre, sur d'autre forum il m'ont parlé d'utiliser la méthode include dans ma classe Domainservice quand je charge mes données et ça marche!

    Merci !

    • Marqué comme réponse Alex Petrescu jeudi 22 juillet 2010 07:48
    mercredi 21 juillet 2010 21:16
  • Le but c'est d'échanger... Si vous n'avez pas compris ma réponse, posez vos questions. Et même si vous n'avez pas de commentaires à faire parce que vous avez trouvé la réponse ailleurs, c'est sympa de la fournir pour que tout le monde sur le forum puisse la lire (pas seulement moi), et aussi parce que je n'aurai pas l'impression de parler dans le vide...

    Oui par définition Lazy loading signifie qu'il faut demander explicitement le chargement des tables reliées. Donc faire un .Include(table reliée) dans la requête est requis.

     

    Cordialement


    Philippe
    jeudi 22 juillet 2010 07:21