我如何才能在 ASP.NET MVC 项目之外访问 Glimpse MessageBroker?
How can I have access to Glimpse MessageBroker outside of the ASP.NET MVC project?
我在 MVC5 项目中使用 Glimpse.Mvc5 (1.5.3),并且正在制作自定义选项卡。此选项卡需要将从另一个项目中记录的信息。
此项目不是 MVC,并且被我的 MVC 项目引用。
我已经通过两种方式获得了 MessageBroker
,但我认为它们都不完美:
通过 GetConfiguredMessageBroker
IMessageBroker broker = GlimpseConfiguration.GetConfiguredMessageBroker();
我第一次尝试这个,成功了,但是这个方法被标记为已弃用,所以没有交易
通过 GlimpseRuntime
GlimpseRuntime glimpseRuntime = HttpContext.Current.Application.Get("__GlimpseRuntime") as GlimpseRuntime;
IMessageBroker broker = glimpseRuntime.Configuration.MessageBroker;
然后我尝试了这个,也成功了,但是有两件事困扰着我:我不得不添加对 System.Web 的引用(对于 HttpContext
),这在我的项目中确实不合适.
使用 "__GlimpseRuntime"
看起来可能会在未来的版本中中断。
我也意识到这打破了抽象(我的另一个项目中出现了一个 WEB 工具),所以如果更好的答案不完全使用 MessageBroker
我觉得没问题。
目前,我建议使用您发现的已弃用的 GlimpseConfiguration.GetConfiguredMessageBroker()
技术。 (如果它对你有用。)
我们正在开发的新版 Glimpse 现在可以作为第一个 class 公民处理来自其他项目和流程的消息。准备好进行一些更改 if/when 你升级。
我在 MVC5 项目中使用 Glimpse.Mvc5 (1.5.3),并且正在制作自定义选项卡。此选项卡需要将从另一个项目中记录的信息。
此项目不是 MVC,并且被我的 MVC 项目引用。
我已经通过两种方式获得了 MessageBroker
,但我认为它们都不完美:
通过 GetConfiguredMessageBroker
IMessageBroker broker = GlimpseConfiguration.GetConfiguredMessageBroker();
我第一次尝试这个,成功了,但是这个方法被标记为已弃用,所以没有交易
通过 GlimpseRuntime
GlimpseRuntime glimpseRuntime = HttpContext.Current.Application.Get("__GlimpseRuntime") as GlimpseRuntime;
IMessageBroker broker = glimpseRuntime.Configuration.MessageBroker;
然后我尝试了这个,也成功了,但是有两件事困扰着我:我不得不添加对 System.Web 的引用(对于 HttpContext
),这在我的项目中确实不合适.
使用 "__GlimpseRuntime"
看起来可能会在未来的版本中中断。
我也意识到这打破了抽象(我的另一个项目中出现了一个 WEB 工具),所以如果更好的答案不完全使用 MessageBroker
我觉得没问题。
目前,我建议使用您发现的已弃用的 GlimpseConfiguration.GetConfiguredMessageBroker()
技术。 (如果它对你有用。)
我们正在开发的新版 Glimpse 现在可以作为第一个 class 公民处理来自其他项目和流程的消息。准备好进行一些更改 if/when 你升级。