5

VS2010 プロジェクトに Twitter.Bootstrap.mvc4 をインストールしました。Glimpseもインストールしました。

Twitter.Bootstrap.mvc4 が提供するナビゲーション ルートを使用するメニューが、Glimpse によって「壊れている」ことがわかりました。NavigationExensions.cs ファイルでは、RouteCollection が Castle プロキシでラップされているため、変数 navigationRoutes は常に 0 を返します。

        public static IEnumerable<NamedRoute> GetRoutesForCurrentRequest(RouteCollection routes,IEnumerable<INavigationRouteFilter> routeFilters)
    {
        var navigationRoutes = routes.OfType<NamedRoute>().Where(r=>r.IsChild==false).ToList();

ウォッチ ウィンドウで情報を確認でき、「((Castle.Proxies.RouteProxy_1)routes[5]).__target」を使用してイミディエイト ウィンドウに表示する情報を取得することもできます。そこで、ルートをループして、名前付きルートを探しました。ただし、プロキシにアクセスするために必要な参照を取得するために何をすべきかわかりません。Castle コードは Glimpse.Core ライブラリに埋め込まれています。

Glimpse をアンインストールして、それが問題の原因であることを確認しました (そうです)。

4

1 に答える 1

5

現在コンテキストは異なりますが、同じ問題を反映する問題があります。

GetRoutesForCurrentRequestインスタンスのチェックと Glimpse はプロキシを使用するため、現時点では実際の修正はありませんNamedRouteが、その間にナビゲーションの問題が修正されるように、Glimpse の一部をいつでも無効にすることができます。

再び機能させるには、

  1. RouteInspectorGlimpseを無効にする必要があります
  2. (オプション) Glimpse ダッシュボードから [Routes] タブを削除します。これは、インスペクターがないために部分的な情報しか表示されないためです。このオプションは必須ではありませんが、Routes タブには必要な情報が表示される場合があります。

これは、Glimpse の構成セクションで行うことができます。

<glimpse defaultRuntimePolicy="On" endpointBaseUri="~/Glimpse.axd">
  <inspectors>
    <ignoredTypes>
      <add type="Glimpse.AspNet.Inspector.RoutesInspector, Glimpse.AspNet"/>
    </ignoredTypes>
  </inspectors>
  <tabs>
    <ignoredTypes>
      <add type="Glimpse.AspNet.Tab.Routes, Glimpse.AspNet"/>
    </ignoredTypes>
  </tabs>
</glimpse>
于 2013-07-08T09:05:16.853 に答える