問題タブ [routedata]

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.

0 投票する
1 に答える
1740 参照

asp.net - Html.BeginForm() で RouteData を保持する

Html.BeginForm() メソッドのバリアントを使用して、次のように html 属性をフォームに添付しています。

残念ながら、これによりフォーム ターゲットがすべてのルート データを失います。

controller/action?abc=123Html.BeginForm()URLがcontroller/action?abc=123_ controller/action、しかしそれは私の目的を解決しません)。

Html.BeginForm()古いルート値を保持し、同時にフォームに html 属性を追加できるバリアントはありますか?

0 投票する
2 に答える
507 参照

asp.net-mvc - RenderAction によって呼び出されるコントローラーの Post で RouteData が失われる

RenderAction を呼び出す "Resume" ビューがあるので、履歴書にコメントを追加できます。コード:

したがって、上記のコードは、ResumeComment コントローラーで Add アクションを呼び出し、resumeId を渡します。Add (GET) メソッド内の ControllerContext.ParentActionViewContext.RouteData を見ると、次の 4 つの値が表示されます。

0 投票する
1 に答える
1060 参照

c# - ASP.NETページの.asmxWebサービスでRoutedataを取得します

ASP.NETWebフォームを使用しています。私のアプリケーションでは、URLでUserNameのroutedataにアクセスできる必要があります。

URLは次のようになります。localhost/profile/MyRAndomUserNAme

次のようなOn_Loadイベントで受信しても問題はありません。

しかし、Asmx WebServiceを使用していて、URLからUserNameを受信しようとすると、機能しません。では、どうすればそれを回避できますか?

PS:MVCプロジェクトではないのでvar userName = ViewContext.RouteData.Values["UserName"];、ビューで使用できません

0 投票する
1 に答える
812 参照

asp.net - コントローラーのコンストラクター/属性で RouteData を取得して [Authorize] の ConnectionString をルーティングする

バックグラウンド

テナントごとに複数のデータベースを使用するマルチテナント アプリケーションがあります。私は CodeFirstMembership を使用しているので、SimpleMembership の実装を完全に制御できます。私の User/Role エンティティは両方とも、アプリケーションの残りの部分と同じ DbContext にあります。

問題

マルチテナンスを容易にするために、サブドメインを取得し、アカウントを持つテナントに対してチェックし、その特定の接続文字列。使用されているサブドメインを返す .GetSubdomain() と呼ばれる RouteData の拡張メソッドがあるので、それがあなたの答えに役立つ場合は、実際にチェックを行って接続文字列を取得できます。

[Authorize] メソッドが正しく機能するために正しいデータベースを指すために、メンバーシップ プロバイダーがサブドメイン チェック情報にアクセスできるようにする必要があります。

私が試したこと

  • InitializeSimpleMembershipAttribute でのメンバーシップ プロバイダーの初期化
    • 動的パラメーターを属性 (RouteData.GetSubdomain() など) に渡すことができないため、これは機能しませんでした。
  • コンストラクターでメンバーシップを初期化します。
    • コンストラクターで RouteData メソッドを呼び出してアプリをビルド/実行することはできますが、RouteData はコントローラーのコンストラクターの時点で設定されていないため、このメソッドも機能しませんでした。
  • 私はこれを試しませんでしたが、承認が既に実行されているため、各コントローラーメソッドの開始時にチェックを追加しても機能しない可能性があります。

だから... 私が試したことから、RouteDataが設定されている場所と実際のAuthorizationの間のポイントにフックする必要があるようです。これを効果的に行うポイントはありますか?

ありがとう!

0 投票する
1 に答える
545 参照

c# - SelectMethod のため、ListView に DataBind できません

私は を持っていて、 のListViewを使用しSelectMethodListViewデータを入力します。から返されたデータにフィルターを適用しようとしていますDropDownList。私が直面している問題は、使用しているため、DataBind()これを使用できないことです。ListViewSelectMethod

したがって、 (Is that better?)DataBind()を使用する代わりに、それをずっと変更すると思います。SelectMethod次に、私が直面する問題は、私の方法が をつかんでいたこと[RouteData]です。現在[RouteData]、メソッドのパラメーターとして を取得しています。下記を参照してください。

以下はリストビューです

URL からDataBind()取得するにはどうすればよいですか? [RouteData]または、これを行うには QueryString を使用する必要がありますか?

0 投票する
1 に答える
783 参照

asp.net-mvc-4 - RouteData に応じて MvcSiteMapProvider が解決しない

MVC 4 サイトで MvcSiteMapProvider を使用しようとしていますが、(たとえば) プロジェクト一覧ページと子プロジェクト詳細ページがあるサイトのセクションで問題が発生しています。

詳細ページにアクセスすると、リストから選択されたエンティティの ID が URL で指定されます。 ~/Project/2/Detail

サイト マップ プロバイダーに拡張機能を提供させたくないので、詳細ページを動的ノードにはしていません。基本的に、サイト マップ プロバイダーが URL パラメーターを無視projectID、常に詳細アクションにマップするようにしたいと考えています。

残念ながら、次の問題があります。

  • リスト ページに対する最初の要求でアプリが開始された場合、ユーザーはクリックして任意のプロジェクトに移動でき、SiteMap は詳細ページとうまく一致します。
  • アプリが詳細ページのリクエストで開始された場合、URL に最初のリクエストの ProjectID が含まれている場合にのみ、SiteMap は詳細ページと一致します。つまり、他のプロジェクトにアクセスすると、SiteMap の currentnode は null になります。

私はキャッシングを無効にしようとしたり、キャッシングを長期間有効にしたり、ソースコードを掘り下げたりしても成功しませんでした。一貫性のない動作は、それがバグであることを示唆しています。どんな助けでも大歓迎です。

0 投票する
2 に答える
2216 参照

asp.net-mvc - ASP.NET MVC - フィルター アクションで設定された RouteData がアクション メソッド パラメーターにバインドされていない

私は(とりわけ)RouteDataに何かを追加するアクションフィルターを持っています。ただし、値はアクション メソッドのパラメーターによって取得されません。理由はありますか?

アクション フィルタ:

アクション方法:

アクション メソッド内の次の行は、アクション フィルターに保存されたデータを返すことに注意してください。

誰でも理由を知っていますか?

0 投票する
1 に答える
2600 参照

asp.net-mvc - Url.RequestContext.RouteData.Values が機能しませんか?

ルートマップに基づいて現在のURLパラメーターベースを取得するために使用できるメソッドがあることは知っていますが、

しかし、このメソッドを実行すると System.NullReferenceException が返されることがわかったので、Url.RequestContext.RouteData.Values で取得したすべてのオブジェクトを[Key:Controller, Value: Blog]チェック[key:action, Value:BlogCommit]インしました。すぐに、それでいいと思います

デフォルトの構成とは何ですか?私のコードの何が問題なのですか?

URL からは次のようになります。

http://www.example.com:1925/Blog/BlogPost/1

根本的な原因は何ですか?または、それを見つける方法はありますか?

0 投票する
1 に答える
2786 参照

asp.net-mvc-3 - コントローラーでURL ID値を取得するには?

現在の URL の ID を取得し、コントローラーで使用したいと考えています。 http://localhost:14160/?id=69 これRequest.RequestContext.RouteData.Values["id"]は null 値を返しています。何か案は?

コントローラ:

コントローラーでIDを取得したい: