Question

J'ai une classe, héritée de IDependency . Quelle est la meilleure façon d'accéder HttpContext de ma classe? Je veux y accéder aussi rapidement possible, une fois HttpContext devient disponible.

J'ai essayé d'ajouter l'injection de dépendance pour IWorkContextAccessor pour ma classe, et d'y accéder à partir du constructeur, mais GetContext () retourne null puis .

Était-ce utile?

La solution

Courant HttpContext est disponible via IWorkContextAccessor objet après les objets conteneurs IoC obtenir créé, de sorte que vous ne serez pas en mesure d'accéder à ceux du constructeur. La meilleure façon est d'accéder à l'objet contextuel lorsque vous souhaitez l'utiliser - tôt - en particulier pas dans le constructeur, comme les constructeurs s'appellent très tôt par le Autofac.

Vous pouvez également inject IOrchardServices objet (nous allons l'appeler "services") , puis utilisez la touche services.WorkContext.HttpContext objet.

Pouvez-vous fournir une plus détaillée à ce que vous voulez atteindre? Pourquoi voudriez-vous que l'accès si tôt? Pourrait pas être réécrite si l'objet de contexte sera utilisé plus tard (par exemple. Dans certains appels de méthode)?

HTH

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