問題タブ [asp.net-mvc-sitemap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc-3 - MvcSiteMap プロバイダーのパフォーマンスの問題
合計 6000 ノードを含む動的ノード プロバイダーを使用しています。@Html.MvcSiteMap().SiteMapPath() を含むカミソリ ビューが初めて要求されると、ページの読み込みに最大 7500 ミリ秒かかる場合があります。
動的ノード プロバイダー内でコードをプロファイリングするときは 28 ミリ秒かかるため、この呼び出し内ですべての時間が費やされます。
mvc.sitemap のすべての動的ノードを取り出すと、コードは 280 ミリ秒という非常に速い速度を返します。
これをプリロードする方法はありますか - 私は IIS 7 を使用しているため、IIS 7.5 の場合はアプリのウォームアップ モジュールまたは新しいアプリのスタートアップ ウォーミング パーツを使用できません。
最新の NuGet バージョン 3.2.1 を使用しています
asp.net-mvc-4 - SiteMapPath の使用に関する問題
私のサイトには、次の構造があります。
- 製品タイプ
- 製品カテゴリ
- 製品
次の特性を持つ製品があるとします。
製品 XYZ - TypeLink: "type-xyz" - CategoryLink: "category-xyz" - リンク: "product-xyz" ...
URL は製品の場合: /produto/type-xyz/product-xyz#category-xyz
カテゴリは Url のハッシュにすぎないことに注意してください。
ルート
ルートの定義に従う
http://mysticpaste.com/private/kXhF9FFLbw/
注意:ルートは完全に機能しています! 理解を深めるためにリストしています
サイトマップ
次のコマンドを使用してサイトマップを表示するには:
razor
@Html.MvcSiteMap().SiteMapPath()
動的
製品タイプ: http://mysticpaste.com/private/yzOR1d0kr9/
製品カテゴリ: http://mysticpaste.com/private/YzWvrYOt6J/
製品: http://mysticpaste.com/private/eDbfxmWAXU/
Mvc.サイトマップ
http://mysticpaste.com/private/2PztbFuDIs/
サイトマップの完全なコードが必要な場合: http://mysticpaste.com/private/JPKOg1a6g9/
Web.config
http://mysticpaste.com/private/8WpRGvc7Cq/
問題
私の問題は、サイトマップがタイトルとリンクを正しく表示していないことです! このサイトはこのリンクで公開されています。 http://datafilme.bindsolution.com/ 例として、製品ページ「Website da Datafilme」を開くことができます。
http://datafilme.bindsolution.com/Produto/software/website-da-datafilme
ご覧のとおり、リンクは正しいです。 しかし、別の製品からのサイトマップ表示データ!
asp.net-mvc-3 - MVCSiteMapProviderを使用したDropDownMenu
asp.net mvc3かみそりエンジンを使用していて、メニューのレンダリングにMVCSiteMapプロバイダーを使用しようとしていますが、マルチレベルのサイトマップを使用している場合、メニューコントロールは、ホバー機能なしでページ上のすべてのノードをレンダリングします。
教えてください、これには方法があります。
asp.net-mvc - 動的ノード プロバイダーにノードを追加する方法は?
SiteMap ファイルの mvcSiteMapNode にノード プロバイダー名を指定して動的ノード プロバイダーを実装しましたが、正常に動作します。ただし、ユーザーが認証されたら動的ノードを追加したいだけです。その理由は、HttpContext.User.Identity にアクセスして、user.Identity でノードをフィルタリングできるようにするためです。
そのため、SiteMap ファイルの mvcSiteMapNode を削除し、代わりに Action メソッドで GetDynamicNodeCollection メソッドを呼び出しており (ユーザーが認証されたら)、ノードはユーザーによってフィルター処理されています。これも期待どおりに機能しています。
私の質問: ノードを取得したら、それらを SiteMapNodeCollection に追加して、ActionResult から返されるビューに表示されるようにするにはどうすればよいですか?
asp.net-mvc - アクションが [Authorize(Roles = "Administrator")] でマークされている場合、MvcSiteMapProvider にノードを表示します。
現在、承認が必要Controller
なIndex()
アクション メソッドがあります。
Mvc.sitemap
これを配置すると、パンくずリストにそれぞれのノードが表示されなくなります。
私が欲しいのは、とにかくこのノードを表示することです...
ユーザーが認証されていないとしましょう。だから私はブレッドクラムにこれを表示したい:
現在、以下のみが表示されます:
ユーザーがCustomersノードをクリックすると、ログイン ビューにリダイレクトされます。
SiteMapVisibilityProvider
次の手順に従って、独自の実装を試みました。
デバッグ中、Index ノードの下にあるノードしか表示されませんでした。つまり、現在のケースでは、Add ノードだけが表示されていました。Index アクション メソッドを表すノードがデバッグ セッションに表示されませんでした。
私が望むものを達成する方法はありますか?
asp.net-mvc - MVCSiteMapProvider動的ノードは、ブレッドクラム内のすべてのページの最初のノードを常に返します
ASP.NET MVC 3プロジェクトにMVCSitemapProviderを使用していますが、プレスリリースセクション用の動的ノードがあります。私が直面している問題は、セクションに複数のノードがあり、サイトマップを見ると、次のように正しく機能していることです。
しかし、パンくずの中で、プレスリリース#2のページに移動すると。ブレッドクラムは最初のノードを表示します。
これがノードプロバイダーのコードです
およびMVCサイトマップコード:
この質問を書き直している間、私はコードをいじって、大きな変更を加えていませんでした...プレスリリース#1はプレスリリース#1を示し、プレスリリース#2はプレスリリース#3を示しています。リリース#3はプレスリリース#1を示しています。
私はこれに困惑しています。
asp.net-mvc-3 - MvcSiteマップMvc3を使用してサブメニューを動的に作成する
メニューItmesを含むMvcSiteマップを作成しました。このサイトマップは、@ Html.MvcSiteMap.Menu(false、true、true)を使用して共有レイアウトページに表示されます。
MenuHelpModel.cshtmlファイルにカスタムコードがあります。ユーザーログイン時にいくつかのmenuitmesを作成したいのですが、ユーザーが所属する組織の数を動的に取得しています。「ユーザーはn個の組織のメンバーになることができます」
MenuHelpModelで動的メニューを作成する方法はありますか、それともレイアウトでコードを作成し、Jqueryを使用してメニューにデータを入力する必要がありますか?
jQuery内でViewBagを使用する方法はありますか?
asp.net-mvc - Orchard CMS:カスタムメニューを作成するためのweb.sitemapがありません
私はOrchardCMSから始めて、(少なくとも私にとっては)障害にぶつかりました。
必要なメニュー(インクリメンタル、ドロップダウンなど)を生成するコードがありますが、Orchardでは使用できないweb.sitemapまたはmvc.sitemapを使用しています。
コードで使用できるサイトマップを取得するために使用できる方法/モジュールはありますか?
高度なメニューまたは他のナビゲーションモジュールは、私が必要としているものに似たものを提供しますか?
あるいは、果樹園はこの種のもののAPIを公開していますか?
私の問題は、果樹園を既存のサイトに統合しているので、同じメニューを提供する必要があるということです。私のメニュージェネレーターは「現在のブランチ」上のすべてのアイテムを強調表示するので、ユーザーはナビゲーション階層のどこにあるかについて強力な視覚的手がかりを得ることができます。私が協力しているサイトの1つには精神障害のある人が含まれているため、パンくずリストはオプションではありません。
編集:
たとえば、高度なメニューからその場でサイトマップを構築するモジュールを作成し、それをサイトマッププロバイダー経由で取得することは可能でしょうか?そんなに難しいことではないはずです...
それが正しい道でしょうか?
現在のブランチと現在のノードの視覚的な手がかりを表示するには、メニューが本当に必要です。
ノート:
私のメニューでは、現在のブランチとノードは現在のページのURLからオンザフライで構築されます(現在のブランチは、現在のページからルートまでの階層内のすべてのページで構成されます)。
asp.net-mvc - 分析、サイトマップ、ルーティング、Asp.Net Mvc のオールインワン ソリューション
分析、サイトマップ、ルーティングのすべてを 1 つのソリューションで計画しています。
Asp.Net mvc のどの拡張メカニズムを使用する必要がありますか? サイトマップと分析の問題の一部は、ルーティング レベルで解決できます。サードパーティのサイトマップ ソリューションを使用するとオーバーヘッドが発生すると思います。(https://github.com/maartenba/MvcSiteMapProvider)。より統合されたソリューションの方が優れています。
(たとえば、すべての Url、Controller、Action 情報を Pagedb に保存します。おそらく正規表現がありますが、db とキャッシュにも保存します)
Ps:ServiceStack Mvc フレームワーク:) と asp.net mvc 4 を使用します
シナリオ:
App_Start
PageProvider を介してすべての URL を準備します (MvcSitemapProvider の DynamicSiteMap 機能のようなもの)。
すべての URL は、コントローラー、アクション、パラメーターをオブジェクトとして保存およびキャッシュされます (サイトマップも用意されています)。
App_BeginRequest
URL が PageCache であることを確認します
存在する場合は、分析を更新し、強力な型指定されたパラメーターを介して実行します
存在しない場合は、有効なチェックを行い、PageCache に追加して以前のオプションに移動します
asp.net-mvc-3 - MvcSiteMap にはルート ノードしかありません
MvcSiteMapProvider を使用しようとしていますが、独自のカスタム レイアウトを作成しようとしています。nuget を使用して MvcSiteMapProvider バージョン 3.2.3.0 をプロジェクトにインストールし、開発用にこのファイルを作成しました。ただし、ルート ノードの子をループしようとすると、何もありません。
ただし、ルート ノードには子がないようです。
何が悪いのかわかりません。ルートを実行されるアクションそのものに置き換え、同様の子を与えましたが、うまくいきませんでした: