2011-05-07 46 views
0

我已经使asp.net中的路由正常工作。但是如果我使用Default.aspx键入地址,它将超出我的路由并点击页面。ASP.NET和自定义路由到默认页面

2)以及为我的应用程序的第一个请求不打的时候 ​​(使用Visual Studio的服务器)不打,所以我不能够呈现的第一页正确

+0

当您转到'http:// localhost /'时会发生什么? – ataddeini 2011-05-07 13:51:53

+0

@ataddeini它将转到default.aspx – satish 2011-05-07 14:12:22

+0

它被设置为IIS中的“网站”或“虚拟应用程序”吗?如果是“虚拟应用程序”,则必须在地址栏中指定名称,例如:http:// localhost/my-webiste – Didaxis 2011-05-07 15:07:54

回答

0
的路由处理.IE

为什么你需要处理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> 
+0

k ..可能是Default.aspx我不想处理..我写了自定义的routeHandler当第一个请求遇到应用程序时,它不会被调用。 – satish 2011-05-07 15:25:08