1

目前,我正在将 Web 应用程序从 Web 表单转换为 ASP.NET MVC。该项目已被转换,并且 IIS 6 已设置 w/通配符映射。我还制作了一个运行良好的 MVC 视图/控制器。不过有一个问题。当访问站点根目录时,路由引擎启动并将用户重定向到默认控制器,而不是 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("/");

没有尝试过,但是这两个选项之一应该可以工作。

于 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 回答