2009-03-26 10 views
0

私は、Microsoft.Web.MvcのLinkBuilderからURLにアクセスしようとしています。現時点では、私は持っている:asp.net mvcの厳密に型指定されたURL

LinkBuilder.BuildUrlFromExpression(???、RouteTable.Routes、 X => x.Index())

しかし、私は、リクエストのコンテキストを取得するかどうかはわかりませんすべての場合。例えば。私がIHttpModuleに入っている場合、どういうわけかリクエストコンテキストを取得して、このようなURLを作成することは可能でしょうか?

答えて

0

MVCの設定にSystem.Web.Routingを使用している場合、カスタムIHttpHandlerクラスの新しいインスタンスを返すIRouteHandlerexample)を実装できます。 HttpHandlerをインスタンス化するためのロジックはIRouteHandlerのGetHttpHandlerメソッド内にあり、IRouteHandlerはroute request context dataにアクセスできます。これをHttpHandlerのコンストラクタに渡して適切に使用することができます。

+0

おそらく私は何か不足していますが、HttpModuleや従来のコードのようなLinkBuilderでURL​​を作成しようとすると、これがどのように役立つのか分かりません。 – pondermatic

+0

@Nick LinkBuilderは、System.Web.RoutingのRequestContextを使用します。そのRequestContextを取得するには、ルーティングを使用している必要があります。ルーティングコンテキストで使用できるHttpHandlerを作成する方法について説明しました。 –

関連する問題