使用MapPageRoute后,Web表单中的默认文档无效

时间:2010-06-04 04:51:27

标签: asp.net .net-4.0 routes iis-7.5

当我在Web表单应用程序中使用路由时,我有两个奇怪的问题。环境:IIS 7.5; .NET 4.0和Windows 7 64位。

  1. 如果我使用(http://www.)mydomain.com,则默认文档不起作用。异常消息是“路径控制器'/'未找到或未实现IController”。但是,如果我在VS中调试2010年(http://localhost:8080),这个问题从来没有出现过。在这里mydomain.com和http://localhost:8080在同一台计算机的同一个文件夹中命中相同的代码。我抓住了request.path的值。使用主机,值为“default.aspx”,而“/”如果访问mydomain.com。我可以使用一行(如果“/”然后重定向到default.aspx)来“修复”问题,但我相信它应该有更好的方法。

  2. 当我检测到request.path时,我收到了一个非常奇怪的请求,这是我以前从未见过的:192.168.1.11/StableWSDiscoveryEndpoint/schemas-xmlsoap-org_ws_2005_04_discovery!我不知道它是从哪里来的。我的代码中没有使用任何Web服务。请求将发布到服务器,用户代理是WSDAPI。我尝试从IE以外的其他浏览器调试代码。看起来我没有得到这样的要求。编辑:我刚刚发现从域控件发送了192.168.1.11/StableWSDiscoveryEndpoint/schemas-xmlsoap-org_ws_2005_04_discovery请求。

  3. 非常感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

最后,我得到了解决第一个问题的解决方案:

        routes.MapPageRoute(   
            "Default",                     
            "",                           
            "~/theactualpage.aspx"
        ); 

这个想法来自http://forums.asp.net/t/1439225.aspx