問題タブ [route-constraint]

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 投票する
3 に答える
3141 参照

asp.net-mvc - ASP.NET MVC には DateTime ルートの制約がありますか?

ASP.NET MVC には、コードに焼き付けられたルート制約が含まれていますか? もしそうなら、日時の制約を定義するにはどうすればよいですか?

例えば。URL:

乾杯 :)

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

.net - ASP.NET MVCには10進ルート制約が組み込まれていますか?

ASP.NET MVCには、コアライブラリに組み込まれた10進ルート制約がありますか?

正規表現の制約があることは知っていますが、他に何かあるのだろうかと思っていました。

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

asp.net-mvc-3 - Mvc3 RouteConstraint - セッションが null

Mvc3 では、IRouteConstraint インターフェイスを実装したときに、独自の RouteConstraint クラスを作成しました。つまり、Match 関数を実装しました。唯一の深刻な問題は、Match 関数が呼び出されるたびに、セッション オブジェクトが常に null になることです。

私の簡単なコードは次のようになります。

ログインした管理者の「レベル」/「タイプ」が必要なため、セッション オブジェクトの使用は避けられません。時間までに維持するのが面倒になるので、私はコントローラークラスでも自分のことをしたくありません。

ありがとう、ガボール

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

asp.net-mvc - ここでルート制約を使用できますか?

次の URL がある場合:

/someurl

そして、私は2つのドメイン名を持っています:

us.foo.com

au.foo.com

これを200(一致)にしたい:

us.foo.com/someurl

しかし、これは 404 (一致しません):

au.foo.com/someurl

ルートは次のようになります。

ルート値がないので推測していますが、ホストに基づいて URL を制約することはできませんか? あれは正しいですか?

もしそうなら、アクションで次の(醜い)以外に、どうすればこれを行うことができますか:

誰でもアイデアはありますか?

それが理にかなっていれば、ルートトークンではなく、ドメインを介してルートを制約する方法を探していると思います。

0 投票する
3 に答える
2442 参照

asp.net-mvc - ASP.NET MVC カスタム ルートの制約と依存関係の挿入

私の ASP.NET MVC 3 アプリでは、次のように定義されたルート制約があります。

実装するアプリで IoC コンテナーとして Ninject を使用しIDependencyResolver、依存関係を登録しました。

このルート制約を依存性注入に適した方法で使用するにはどうすればよいですか?

編集

この依存関係を単体テストに渡す方法が見つかりません。

0 投票する
3 に答える
725 参照

c# - POSTでのルート制約エラー

アクションでデータを操作する場合、多くの場合、パラメータとしてIDを受け取りますが、そのIDに対してエラー処理を行う必要があります。すべてのアクションに対して実行する必要のあるエラー処理の1つは、IDが0より大きい(負の数ではない)ことを確認することです。したがって、アクションでこれを処理する代わりに、ルート制約を追加して、負のIDの場合にアクションにルーティングしないようにしました。

これが私のコードです:

アクションでGETを実行するとすべて正常に機能しますが、POSTすると、404ページに移動する必要があるときに次のエラーが発生します。

何か案は?おそらくより良い解決策ですか?

編集:何か面白いことに気づきました。最初はエラーメッセージは500だと思っていましたが、「メソッドが見つかりません」である405です。

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

asp.net-mvc-3 - MVC3動的サブドメインルーティング

まず、この問題に関連する多くの投稿を読みました。 たとえば、Asp.net MVC RouteBaseとIoC動的に読み込まれるモジュールのテナント固有のルートなどです。

私が欲しいのは:-tenant1.mydomain.com、tenant2.mydomain.comなどのようなページを動的に作成します。-私のテナントは同じ機能を持ちますが、コンテンツ、スタイル、タイトルなどが異なります。

RouteBaseクラスを拡張しようとしましたが、それはクリーンなソリューションではないことを読みました。次に、上記の投稿のようにカスタムRouteConstraintを作成しようとしましたが、成功しませんでした。

助けて!

ありがとう!

0 投票する
4 に答える
3798 参照

asp.net-mvc - ページでのUrl.Actionの最初の呼び出しが遅い

かなり単純なASP.MVCビューでパフォーマンスの問題が発生します。

これは、ほぼ瞬時に実行されるはずのログオンページですが、約0.5秒かかります。

多くの掘り下げの後、問題は最初の呼び出しであるように見えますUrl.Action-それは約450msかかります(MiniProfilerによるとが、それはめちゃくちゃ遅いようです。

の後続の呼び出しUrl.Actionは1ミリ秒未満かかります。これは、私が期待するものとより一致しています。

これは、使用するか使用するかにかかわらず一貫Url.Action("action", "controller")していますUrl.Action("action")が、を使用すると発生しないようですUrl.Content("~/controller/action")。これは、を呼び出すときにも発生しますHtml.BeginForm("action")

誰かがこれを引き起こしているものを知っていますか?

ソースを掘り下げるRouteCollection.GetVirtualPathと、との両方に共通しているため、それが原因である可能性がありUrl.ActionますHtml.BeginForm。しかし、確かにそれは至る所で使用されていますか?つまり、1/2秒は遅すぎます。

私は20かそこらのカスタムルートを持っています(それはいくつかのレガシーWebFormsページを備えたかなり大きなアプリです)が、それでも時間が遅すぎるようです。

それを修正する方法はありますか?

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

asp.net-mvc - アクション リンクからルート制約に値を渡す

値 (具体的にはサブドメイン値) をアクション リンクからカスタム サブドメイン ルート制約 (IRouteConstraint を実装) に渡して、値が URL に表示されないようにしたいと考えています。ルート値コレクションを介して値を渡すことで、その値を URL から隠すことができませんでした。URL で常に表示されます。

では、どうすればこれを達成できますか?値が見えないようにデータを渡す別の方法はありますか?

0 投票する
0 に答える
936 参照

asp.net-mvc - 属性ルーティング - IRouteConstraint によって消費されるパラメーターにスラッシュを含めますか?

属性ベースのルーティングを試しています。見た目は良いのですが、問題が 1 つあります。

ドキュメント (attributerouting.net) と SO を精査しましたが、カスタム ルート制約を使用してスラッシュを含むパラメーターを渡す方法がわかりません。たとえば、URL。

コントローラーの属性:

IRouteConstraint:

これはうまく機能します.... URL にスラッシュが含まれている場合を除いて、404 が表示されます。

そこで、次のようにルート パラメータにアスタリスクを追加しました。

しかし、今は IRouteConstraint クラスの値にアクセスできません。

CustomURLConstraint の Match メソッドでは、値はvalues[parameterName]WITH キャッチオール スター - as を介して取得され*urlます。

ルート値は期待どおりactionandで取得されますcontrollerが、キーurlは null です。*url鍵はありません。