2

最近のプロジェクトで、PHP で独自の MVC フレームワークを構築しました。私が実装したものの 1 つはルーティング システムでした。Apache の mod_rewrite を使用してすべてのリクエストを index.php に送信し、URI を解析して情報を抽出し、リクエストをルーティングしました。

私は今 ASP.NET に手を出していますが、似たようなことを実行するかどうか、またはどのように実行するかを考えています。中央ルート処理が実行される 1 つのページにすべてのリクエストを (WordPress と同様に) ルーティングする方法はありますか? ASP.NET の MVC フレームワークは知っていますが、いじくり回して学んでいるので、自分で試してみたいと思います。

編集:ところで、私のホスティングプロバイダーはIIS 6を実行しています

4

1 に答える 1

6

これは長い答えになるでしょう。なぜなら、あなたがやりたいことを成し遂げることができるすべての方法をあなたが完全に知っていることを確認したいからです。

ASP.NET MVC Frameworkを強化するルーティングエンジンは、従来のASP.NETFrameworkで動作します。ASP.NET MVCアプリケーションの場合と同じように、RouteTableの使用とルートの割り当てを利用できます。従来のASP.NETサイトではMVC部分を取得できません。これはASP.NETFrameworkの大幅な機能強化であり、そのコードを再利用して両方のフレームワークで機能させることができたのは素晴らしいことでした。これについて詳しく知りたい場合は、ScottGuの投稿をチェックして、URLルーティングの改善までスクロールダウンしてください。また、PhilHaackによるWebFormsでのSystem.Web.Routingの使用方法に関するリファレンスもあります。

さて、あなたがまだあなた自身を書きたいのなら。ASP.NET HTTPパイプラインと、ルーティングを処理するための独自のHttpModuleまたはHttpHandlerクラスを作成するためのIHttpModuleおよびIHttpHandlerインターフェイスの実装方法を学習する必要があります。これらのインターフェースは、独自のルーティングエンジンを作成するための鍵です。これらのインターフェイスを実用的な例にするために、このMSDNの記事を十分に推奨することはできませんでした。どちらのインターフェースを使用するかを示し、独自のルーティング/URL書き換えエンジンを作成する際の違いについて説明します。

さて、あなたがこれがあなたにとって大いに役立つかもしれないとわかったら。.NETでルーティング/URL書き換えエンジンをすでに作成しているユーザーが使用できるサードパーティのライブラリがあります。これは、少し前に私が見た質問です。「 ASP.NetにどのURLリライターを使用しますか?」という質問がここSOにあります。

于 2008-08-22T17:31:20.873 に答える