Question

Nous utilisons les entités Self-Tracking sur un service WCF. Les entités se sont retournés au client sans leurs propriétés de navigation chargées.

est-il une meilleure idée d'envoyer sur toutes les propriétés de navigation à la fois, ou à la charge paresseux les au besoin? Si paresseux chargé, est-il une bonne idée de les charger de manière asynchrone? Tout le service WCF appels que j'ai donc utiliser loin le await / async mots-clés.

Je crains au sujet de les charger à la fois parce que certains objets ont beaucoup de propriétés de navigation qui ne sont pas toujours utilisés. Par exemple, l'entité des consommateurs a actuellement environ 20 et devrait obtenir plus. Voici quelques exemples d'adresses, téléphones, documents et notes. Les utilisateurs peuvent configurer leur propre espace de travail pour que quelqu'un pourrait travailler avec des documents toujours besoin de la propriété Documents lorsqu'une charge de la consommation, alors que la plupart d'autres pas.

Était-ce utile?

La solution

Cela dépend vraiment de la façon dont vous utilisez les entités. Le plus coûteux sera aller-retour au service, donc si vous avez des propriétés de navigation qui sont utilisés dans la plupart des scénarios, vous pouvez charger désireux eux, mais pour les propriétés de navigation utilisées que de temps en temps, vous pouvez utiliser le « chargement paresseux ». La vraie réponse à votre question peut être fournie que par une analyse importante de votre application et des tests de performance.

Qu'est-ce que je crains peu est la manière dont vous pouvez mettre à jour ce modèle. Une fois que vous chargez toutes les entités connexes et faire un objet graphique d'eux vous pouvez envoyer une partie seulement du dos graphique au service? Je ne peux pas attendre que vous.

Modifier

Je lis votre autre question avec « l'interface utilisateur dynamique ». Donc, une fois que l'utilisateur démarre l'application que vous savez probablement ce que l'interface utilisateur des widgets doivent être affichés. Vous pouvez exposer une méthode initiale qui passera description de toutes les propriétés de navigation requises par les widgets actuellement ouvertes et charger d'autres propriétés lorsque le nouveau widget est ouvert. Il suffit d'ajouter un widget prendra un certain temps pour obtenir les données. Encore quelques données de navigation plus petites peuvent être automatiquement inclus.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top