1

現在、WebアプリケーションをWebフォームからASP.NETMVCに変換しています。プロジェクトは変換され、IIS6はワイルドカードマッピングを使用してセットアップされています。また、正常に動作するMVCビュー/コントローラーを1つ作成しました。ただし、1つの問題があります。サイトルートにアクセスすると、ルーティングエンジンが起動し、IISの既定のページ設定ではなく、既定のコントローラーにユーザーをリダイレクトします。ルーティングエンジンが起動する前に、IISにデフォルトページを使用させる方法はありますか?

そうでない場合...

デフォルトのコントローラーでユーザーをデフォルトのページ(LoginPage.aspx)にリダイレクトするようにしました。これは、web.config承認がパスが承認されていないと見なしているように見えることを除いて機能します。したがって、http://dev01/SampleWebApp/LoginPage.aspx?ReturnUrl =%2fSampleWebAppのようなパスにリダイレクトされます。

デフォルトのコントローラー(http:// dev01 / SampleWebApp / default /)に直接移動すると、ユーザーは正しいパスでログインページにリダイレクトされます。

では、web.config認証を渡してサイトのルートを取得し、ReturnUrlなしでログインページにリダイレクトする方法はありますか?

どんな助けでも大歓迎です。

ありがとう、ダレン

4

2 に答える 2

1

global.asaxのルート設定の上部:

routes.IgnoreRoute("LoginPage.aspx");

また:

routes.IgnoreRoute("/");

まだ試していませんが、これら2つのオプションのいずれかが機能するはずです。

于 2010-09-23T22:53:19.043 に答える
0

したがって、私の問題の解決策は、system.webタグの下のweb.configでURLマッピングを使用することでした。

<urlMappings enabled="true">
    <add url="~/" mappedUrl="~/LoginPage.aspx"/>
    <add url="~" mappedUrl="~/LoginPage.aspx"/>
</urlMappings>

「〜/」はhttp:// dev01 /SampleWebApp/パスをリダイレクトします。

「〜」はhttp:// dev01/SampleWebAppパスをリダイレクトします。

于 2010-09-29T21:46:49.333 に答える