Qu'est-ce que NHibernate Interceptor, et à quoi sert-il dans une application? En outre, in this article, j'ai appris que l'utilisation de NHibernate rend l'application de bureau plus lente au démarrage. Pour éviter cela, j'ai besoin de sauvegarder la configuration dans un fichier et de la charger ensuite dans le fichier sauvegardé. Comment puis je faire ça? Je n'ai trouvé aucun exemple dans ce tutoriel.NHibernate Interceptor - Qu'est-ce que c'est?
Répondre
Un intercepteur vous permet d'exécuter des fonctionnalités supplémentaires lorsqu'une entité est récupéré/supprimé/mise à jour/inséré dans le DB ...
de faire votre application est plus lente: Je vous suggère de ne regarder que l'optimisation du temps de démarrage, quand cela devient vraiment un problème. Lorsque vous construisez une session-factory, NHibernate analyse tous les mappages, et c'est une opération un peu coûteuse. Mais, tant que vous avez un nombre limité d'entités, la performance n'est pas si importante.
Je n'ai jamais eu à optimiser l'initialisation de NHibernate, à cause de la lenteur des temps de démarrage. Je suggérerais que vous vous concentriez d'abord sur le cœur de votre application, le problème que vous essayez de résoudre, et ensuite sur la façon dont vous pourriez améliorer les performances de démarrage. (Si jamais vous deviez le faire).
FYI, Hibernate doc lien ne fonctionne plus. –
Interceptors, comme son nom l'indique, vous permet d'intercepter les opérations NHibernate (enregistrer/mettre à jour/supprimer/charger/flush/etc).
Une API plus récente et plus flexible pour y parvenir est la event system.
A propos de la sérialisation de la configuration, le code est là, c'est la classe Effectus.Infrastructure.BootStrapper
qui est appelée au démarrage de l'application.
série de dissection d'un intercepteur écrit par moi se trouvent ici http://blog.scooletz.com/2011/02/03/nhibernate-interceptor-magic-tricks-pt-1/
espère que cela aide
Il y a deux questions. Veuillez créer des questions individuelles pour chaque problème. –