2013-10-18 26 views
0

我想添加一些自定义插件来窥探。然而,我想要做的分析是昂贵的,所以我只想要这样做,如果启用当前请求的瞥见id。我是否可以通过代码访问某个媒体资源以告知我目前是否可以观看。从代码可以确定当前请求是否激活了瞥见?

喜欢的东西:

if(GlimpseConfig.IsGlimpseActive) 
{ 

} 

回答

2

首先,如果你要创建一个插件掠影像custom tab那么你的选项卡将只被要求提供数据管窥是否对给定请求有效。

所以要清楚的是,如果你想在你的标签中进行如上所述的检查,那么这是没有必要的,因为Glimpse不会首先给你打电话。但是,如果您正在讨论启用/禁用一些将由您的自定义选项卡访问并且可能很昂贵的分析代码,那么我想检查可能确实有帮助。不幸的是,目前没有办法做到这一点,没有某种滥用 Glimpse内部。

你的问题似乎与this question有相同的要求,所以我不打算在这里粘贴相同的答案,但我会粘贴代码示例以完整解答此答案。

但总而言之,如果您牢记目前尚无法确保此功能是否能够在即将推出的版本中继续运行,则可以执行以下操作,但请检查other question以了解更多详细信息。

public static class CurrentGlimpseStatus 
{ 
    private const string GlimpseCurrentRuntimePolicyKey = "__GlimpseRequestRuntimePermissions"; 

    public static bool IsEnabled 
    { 
     get 
     { 
      RuntimePolicy currentRuntimePolicy = RuntimePolicy.Off; 
      if (System.Web.HttpContext.Current.Items.Contains(GlimpseCurrentRuntimePolicyKey)) 
      { 
       currentRuntimePolicy = (RuntimePolicy)System.Web.HttpContext.Current.Items[GlimpseCurrentRuntimePolicyKey]; 
      } 

      return !currentRuntimePolicy.HasFlag(RuntimePolicy.Off); 
     } 
    } 
} 
相关问题