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

ASP.NET MVC Discussion :

[EF] plusieurs datareader


Sujet :

ASP.NET MVC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 101
    Par défaut [EF] plusieurs datareader
    Bonsoir
    J'ai mis en place un formulaire de recherche qui recupere en base des objets Demandes. Chaque demande a un Responsable. Lorsque je lance l'application et que je fais une recherche, j'obtiens l'erreur:
    There is already an open DataReader associated with this Command which must be closed first.
    lorsqu'il essaye d'acceder ) @Model (donc la demande).Responsable.Nom
    Il n'arrive donc pas à faire la jointure entre les tables. J'ai lu qu'il faut autoriser plusieurs dataReader en ajoutant à la connection String:
    MultipleActiveResultSets=True.

    Donc dans EF, il suffit d'ajouter ce bout de chaine à la connectionString du provider:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <add name="DemandeContext" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;initial catalog=Db_Customs;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/>
    Mais s'il était déja desactivé, c'est qu'il y a peut être une raison...risque de boucles ou de lenteurs dûent à la non-fermeture d'un datareader?

    Bonne soirée

  2. #2
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2011
    Messages : 31
    Par défaut
    bonjour,
    je pense que ca a relation avec le LazyLoading, qui est par défaut activé. reste a mettre dans ton ton modèle l'anotation [include] devant l'attribut Responsable de l'entite Demande pour qu'au moment de chargement des Demandes, il te ramène aussi les responsables, et que ca devienne accessible comme attribut.
    j'espere t'avoir aidé.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 101
    Par défaut
    Salut, cela m'aiderait en effet enormement si je pouvais utiliser [include], ça me debloquerait grandement mais visual studio ne reconnait pas se flag (c'est bien une data anotation?). Du coup, y a t'il une directive à ajouter?

    Merci d'avance

  4. #4
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2011
    Messages : 31
    Par défaut
    bonjour,
    c'est bien du data annotation, si je me trompe pas, essaie de référencer
    System.Data.Entity dans ton projet. puis importe dans le code concerné
    componnentModel.DataAnnotations .

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 101
    Par défaut
    J'ai bien ajouté ces directives, c'est pour ça que je me demandais si c'était vraiment une dataAnotation, puisqu'elle n'ait pas reconnue, meme avec le :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.ComponentModel.DataAnnotations;
    Et elle n'existe pas non plus dans la liste des DataAnnotations...mirage?

  6. #6
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2011
    Messages : 31
    Par défaut
    est ce que tu poster un morceau du code modèle ou t a mis le fameux include,
    et la requete concernée.

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

Discussions similaires

  1. Remplir simultanément plusieurs combobox par datareader
    Par Machine Head dans le forum VB.NET
    Réponses: 1
    Dernier message: 16/07/2010, 11h52
  2. Lire plusieurs fois un datareader
    Par Oberown dans le forum ASP.NET
    Réponses: 1
    Dernier message: 27/01/2010, 22h34
  3. [C#] Ouverture de plusieurs DataReader
    Par Pfeffer dans le forum C#
    Réponses: 10
    Dernier message: 15/03/2009, 15h26
  4. Plusieurs requetes avec DataReader
    Par riemp dans le forum VB.NET
    Réponses: 3
    Dernier message: 01/06/2008, 18h49
  5. [ADO.Net] - Problème lors de l'utilisation de plusieurs DataReader
    Par Aurazed dans le forum Accès aux données
    Réponses: 1
    Dernier message: 29/10/2007, 16h21

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