我已经使asp.net中的路由正常工作。但是如果我使用Default.aspx键入地址,它将超出我的路由并点击页面。ASP.NET和自定义路由到默认页面
2)以及为我的应用程序的第一个请求不打的时候 (使用Visual Studio的服务器)不打,所以我不能够呈现的第一页正确
我已经使asp.net中的路由正常工作。但是如果我使用Default.aspx键入地址,它将超出我的路由并点击页面。ASP.NET和自定义路由到默认页面
2)以及为我的应用程序的第一个请求不打的时候 (使用Visual Studio的服务器)不打,所以我不能够呈现的第一页正确
为什么你需要处理default.aspx?如果您参考您的网站的根,如:
Response.Redirect("~/");
// or
<a runat="server" href="~/">Home</a>
地址已正确解析。那么如果有人想输入default.aspx,那么他们将会到达那里并且在地址栏中显示default.aspx。这里的问题究竟是什么?
至于你的第二个问题,它可能是Web.config中的配置问题。请确保您在WEb.config中具有以下内容:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
</modules>
</system.webServer>
</configuration>
k ..可能是Default.aspx我不想处理..我写了自定义的routeHandler当第一个请求遇到应用程序时,它不会被调用。 – satish 2011-05-07 15:25:08
当您转到'http:// localhost /'时会发生什么? – ataddeini 2011-05-07 13:51:53
@ataddeini它将转到default.aspx – satish 2011-05-07 14:12:22
它被设置为IIS中的“网站”或“虚拟应用程序”吗?如果是“虚拟应用程序”,则必须在地址栏中指定名称,例如:http:// localhost/my-webiste – Didaxis 2011-05-07 15:07:54