Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 20726|Répondre: 0

[Source] Différences entre .net IQueryable et IList

[Copié le lien]
Publié sur 22/08/2016 11:22:07 | | |

IList (IList<T>) crée immédiatement des données persistantes en mémoire, qui n’implémentent pas « l’exécution différée », et si l’entité chargée possède des entités associées, celle-ci ne sera pas chargée (ni immédiatement ni paresseuse).

IQeurable <T>ne crée pas immédiatement de données persistantes en mémoire, mais ne charge les données en mémoire que si elles sont parcourues (par exemple via forreach), converties en liste, etc., et peuvent réaliser une « exécution différée », si l’entité actuellement chargée a des associations, cette entité associée peut être chargée par l’accès suivant.

Regardez le code suivant :
//IList的情况
IList users = res. ToList() ; Les utilisateurs ont été chargés en mémoire, mais l’entité associée (UserInfos) à chaque utilisateur ne l’a pas été,
                       est chargé, donc la ligne de code suivante ne passe pas sans problème
VAR SS = Utilisateurs. Où(p => p.UserInfos.ID != 3) ; L’erreur est signalée ici car l’entité UserInfos de P ne peut pas être chargée

Situation d’IQuerable
Utilisateurs IQueryables = res. AsQueryable() ; Les utilisateurs ne sont pas chargés immédiatement, et l’entité associée peut être obtenue par « chargement paresseux »
                                   Je l’ai
VAR SS = Utilisateurs. Où(p => p.UserInfos.ID != 3) ; Le SS correspondant a été obtenu ici avec succès




Précédent:.net développe WeChat pour obtenir des informations utilisateur et une fonction de scan [avec code source]
Prochain:Demandez une commande Alipay pour surveiller l’utilisation du disque, @小渣渣
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com