250 votes

Quel (s) effet (s) le mot-clé virtuel peut-il avoir dans Entity Framework 4.1 Code POCO First?

L' virtual mot a un effet sur les propriétés en EF Premier Code. Quelqu'un peut-il décrire l'ensemble de ses ramifications dans des situations différentes?

Par exemple, je sais qu'il peut contrôler le chargement paresseux - si vous utilisez le mot clé virtual sur une ICollection/un-à-plusieurs relations de propriété, il sera paresseux-chargé par défaut, alors que si vous laissez le mot-clé virtuel, il sera de chargement hâtif.

Quels sont les autres effets peut - virtual ont en EF avec des entités POCO? Dois-je par défaut à l'aide d' virtual sur toutes mes propriétés, ou le défaut de ne PAS l'utiliser?

203voto

Scott Stafford Points 13161

Jusqu'à présent, je sais de ces effets.

  • Chargement différé: Tout virtual ICollections seront chargement paresseux, à moins que vous marquer spécifiquement autrement.
  • Plus efficace le suivi des modifications. Si vous remplissez toutes les conditions suivantes, alors votre suivi des modifications peuvent utiliser une méthode plus efficace en accrochant vos propriétés virtuelles. À partir du lien:

    Pour obtenir le suivi des modifications des procurations, le règle de base est que votre classe doit être public, abstrait ou non scellées. Votre classe doit implémenter public virtuel des getters/setters pour tous les propriétés sont conservées. Enfin, vous devez déclarer collection relation fondée sur la navigation propriétés ICollection<T>seulement. Ils ne peuvent être en béton la mise en œuvre ou une autre interface qui découle de l' ICollection<T>(un différence entre le Chargement Différé proxy)

Un autre lien utile décrivant c'est MSDN est requise pour la Création de POCO Procurations.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X