問題タブ [ignoreroute]
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.
c# - asp.netフォームのURLルーティングでルートを無視する方法
.NET 3.5 SP1 フレームワークを使用しており、アプリケーションに URL ルーティングを実装しました。JavaScriptエラーが発生していました:
Error: ASP.NET Ajax client-side framework failed to load.
Resource interpreted as script but transferred with MIME type text/html.
ReferenceError: Can't find variable: Sys
これは、ルーティングが Microsoft axd ファイルを取得し、javascript を適切に送信していないためだと思います。いくつかの調査を行ったところ、 を使用できることがわかりましたRoutes.IgnoreRoute
。これにより、次のように axd を無視できるようになります。
しかし、その行を Global.asax に追加すると、次のエラーが発生します。
CS1061: 'System.Web.Routing.RouteCollection' does not contain a definition for 'IgnoreRoute' and no extension method 'IgnoreRoute' accepting a first argument of type 'System.Web.Routing.RouteCollection' could be found (are you missing a using directive or an assembly reference?)
System.Web.Routing
名前空間をインポートしました。アイデアはありますか?
asp.net-mvc - IIS7 でホストされている ASP.NET MVC 1.0 アプリ内からのすべての *.php、*.cgi などのページに対する要求をブロックするにはどうすればよいですか?
パス情報に関係なく、.php または .cgi へのリクエストをブロックしたいと思います。
たとえば、次の URL が使用されている場合:
http:// mysite /Admin/Scripts/Setup.php
これは既存のルートと一致します。
ただし、スクリプト用のコントローラーがないため、MVC は次をスローします。
IControllerFactory '' は、'scripts' という名前のコントローラーのコントローラーを返しませんでした。
私が本当に望んでいるのは、MVC がコントローラーに到達する前に、要求が単純にハード フェイルで満たされることです。
Application_BeginRequest を Global.asax にフックし、新しい HttpException(404, "Not Found") をスローすることでこれを実行できることはわかっていますが、それは私が探しているエレガントなソリューションではありません。
私はこれがうまくいくことを本当に望んでいました:
しかし、そうではありません。
注: Sean Lynch の回答はうまく機能しますが、それでも System.Web.Routing または System.Web.Mvc ベースのソリューションが本当に必要です。そうすれば、ユーザーが実行時に独自の除外を追加できるようになります。
asp.net - ASP.MVCのIgnoreRoute
ビューディレクトリの.jsファイルにアクセスしようとしています。/Views/Home/MyControl.ascxを使用したMVCアプリケーションがあります。jsファイル/Views/Home/MyControl.jsがあります。
.jsファイルを参照して、コントロールと一緒に保持したいと思います。ルーティングで次のエントリを試しましたが、どれも機能していないようです。
助けてください。スクリプトディレクトリに.jsファイルを追加することを提案しないでください。私はそれをこのように機能させるか、なぜそれができないのかを知りたいです。
スクリプトをページに配置しますが、VS2010B2ではスクリプトのデバッグのみが機能しません。
よろしくクレイグありがとう。
asp.net - ASP.NET ルーティング ignoreRoute が機能しない
存在しないファイルをルーティング システムから除外できません。Web フォームのシナリオでこのコードを扱っています。
デバッグするとき
パスにはまだ存在しない gif ファイル、jpg などが含まれています。可能であれば、拡張子を持つすべてのファイルを除外したい
上記のコードに何か問題がありますか? 順序は正しいですか。つまり、RouteCollections にルートを追加する前に、routes.IgnoreRoute エントリを追加しますか?
php - ASP.NET MVC 3 に埋め込まれた PHP サイトの IgnoreRoute
私は worpress ブログが埋め込まれた MVC 3 サイトを持っています。次のすべての URL は、MVC 経由で送信されます。
また、php ワードプレス ブログである Blog というトップ レベルのディレクトリもあります。www.mysite.com/blog/index.php
ブログにアクセスすると表示されます。しかし、へのすべてのアクセスはwww.mysite.com/blog
MVC を介してルーティングされるようであり、欠落していることを参照する無関係なエラーのように思われるものを生成しますSystem.Web.Helpers
(bin フォルダーにデプロイしたので、それが問題ではないことはわかっています)。
RegisterRoutes
私のファイルのメソッドでGlobal.asax.cs
は、メソッドの先頭でこれらの行の両方を試しましたが、どちらも機能していないようです。
誰にもアイデアがありますか?
スヌーピーの要求に従って、Global.asax.cs の内容を含めました。
asp.net-mvc - URL が "/Views/" で始まる場合、ASP.NET MVC IgnoreRoute メソッドが正しく機能しない
アプリケーションで ASP.NET MVC を使用しています。
ユーザーは、ページに含めることで、独自の画像、スタイル、スクリプトを指定できます。
しかし、存在しないファイルへの URL を指定すると、ルーティング メカニズムは、画像やスタイルなどへの URL によってコントローラーとアクションを見つけようとします。
メソッド IgnoreRoute を追加し、ルーティングによって処理したくないすべての拡張機能を指定しました。
URL が「Views/...」で始まらない限り、正しく機能します。
この場合、URL がアプリケーションに渡され、アプリケーション内でエラー 404 が実行されます。
しかし、IIS でこのエラーを処理したいと考えています。
これは、空のプロジェクトでテストできます。このコードを Global.asax.cs ファイルに使用するだけです。
次に、このアプリケーションを IIS でホストする必要があります (たとえば、http://localhost/testmvc/)。
Application_Error メソッド内にブレークポイントを配置して、アプリケーション内でエラーがいつ実行されるかを確認できます
テスト URL を開きます:
http://localhost/testmvc/test.css
IIS がそのエラーを処理したことがわかります。
ここで、パスに「/Views/...」を含む別のテスト URL を開きます:
http://localhost/testmvc/Views/test.css
そして、ASP.NET によってエラーが処理されたことがわかります。
問題は、パスに「ビュー」を含む URL を処理しないように MVC に指示する設定が存在する可能性があることです。
asp.net-mvc-3 - IgnoreRoute が PIE.htc で機能しない
私は長い間検索してきましたが、自分の間違いを見つけることができないようです. 私の MVC 3 Web サイトでは、角の丸いボタンが必要なので、IE スタイルシートに PIE.htc を登録します。ここでの問題は、ボタンをクリックすると、UrlReferr ビューをリダイレクトするときに PIE.htc がダウンロードとしてユーザーに提供されることです。ここで説明されているように PIE を実装しました: css3pie in MVC, where to place the pie.htc file?
次のルートは無視する必要があります。
リソースとファビコンは機能しますが、PIE.htc は無視されるようです。理由はありますか?
.net - これら 2 つの ASP.NET MVC IgnoreRoute ディレクティブの違いは何ですか?
デフォルトの ASP.NET MVC 3 プロジェクト テンプレートには、次のIgnoreRoute
ディレクティブが含まれています。
複数のプロジェクトがこの行 ( StackExchange の DataExplorerを含む) を代わりに次のように変更するのを見てきました。
この後者のバージョンが適切であるのに、デフォルトルートを無視するのが適切ではない理由を、.axd
誰がどのシナリオで、または一般的に説明できますか? またはその逆に、なぜこの後者のバージョンを使用せず、代わりにデフォルトのままにすることを選択するのでしょうか?
IgnoreRoute
私は構文を完全には理解していないことを認めなければなりません。また、この件に関する MSDN ドキュメントはかなり簡潔です。
asp.net-mvc - 既に無視されたルートに一致するルートを作成できますか?
そのため、global.asax に次のものがあり、MVC ルートを作成しています。それらは、以下に表示される順序で呼び出されます。私が予想していたのは、css フォルダーへのルートを無視し、css/branding.css (実行時に別のビューから生成される) へのルートを作成することでした。
これは不可能ですか?css/branding.css にリクエストすると、ファイルが存在しないという 404 エラーが表示されます。これを機能させる方法はありますか。このファイルが css フォルダー以外の場所から来ていることを、ソースを表示しているすべての人に透過的にしたいと思います。
asp.net - 非 MVC ASP.NET Web フォーム アプリケーションで System.Web.Mvc を使用する
私たちは、global.asax のルート テーブルを使用して、REST モデル化された URL を使用して ASP.NET Web フォーム アプリケーションを開発しています。しかし、最近、WebResource.axd ファイルと ScriptResource.axd ファイルもルーティングされるという問題が発生しました。RouteCollection.IgnoreRoute 関数を使用したかったのです。ただし、これは System.Web.Mvc にあるため、非 MVC Web フォーム アプリケーションでその dll を参照する必要があることを意味します。
アプローチを続けても安全ですか?Web フォーム アプリケーション内からのルートを無視するより良い方法があれば、共有してください。また、アプリケーションは Web フォームで広く開発されており、現段階で MVC に移行することは現実的ではないことにも注意してください。