我在MVC5项目中使用Glimpse.Mvc5(1.5.3),我正在创建一个自定义选项卡。此选项卡需要从另一个项目中记录的信息 这个项目不是MVC,我的MVC项目引用。
我设法以两种方式获得MessageBroker
,但我认为其中任何一种都不完美:
IMessageBroker broker = GlimpseConfiguration.GetConfiguredMessageBroker();
我首先尝试了这个,但是成功了,但是这个方法被标记为已弃用,所以没有交易
GlimpseRuntime glimpseRuntime = HttpContext.Current.Application.Get("__GlimpseRuntime") as GlimpseRuntime;
IMessageBroker broker = glimpseRuntime.Configuration.MessageBroker;
然后我尝试了这个,也取得了成功,但有两件事困扰着我:我必须添加对System.Web(对于HttpContext
)的引用,这在我的项目中实际上是不合适的。
使用"__GlimpseRuntime"
看起来可能会在将来的版本中破坏。
我也意识到这是破坏抽象(在我的其他项目中出现的一个WEB工具),所以如果一个更好的答案并没有完全使用MessageBroker
,我就可以了。
答案 0 :(得分:1)
目前,我建议您使用已发现的已弃用的GlimpseConfiguration.GetConfiguredMessageBroker()
技术。 (如果它适合你。)
我们正在开发的新版Glimpse现在处理来自其他项目和流程的消息,作为一等公民。只要准备好在升级时进行一些更改。