updatepanel不工作Url路由

时间:2014-06-30 13:13:08

标签: c# asp.net url-routing

我遇到了一些问题。我的回发导致我的asp.net应用程序页面跳回到页面顶部,即使它们位于更新面板内 当我使用此路由更新面板停止工作

   void Application_Start(object sender, EventArgs e)
    {

        RouteTable.Routes.MapPageRoute("UProfile", "{ID}", "~/UProfile.aspx");
    }

但是当我使用这段代码时它工作正常,但我想要最简单的网址

   void Application_Start(object sender, EventArgs e)
{

    RouteTable.Routes.MapPageRoute("UProfile", "Users/{ID}", "~/UProfile.aspx");  

我该如何解决这个问题? 我尝试了几种不同的解决方案,但是没有用:

1)http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx

2)http://www.iis.net/learn/extensions/url-rewrite-module/url-rewriting-for-aspnet-web-forms

1 个答案:

答案 0 :(得分:0)

这将路由将目标根Url,因为没有任何特定的标识符可以正确映射它。我宁愿建议编写路由约束,以便在验证传递的参数后决定何时使用用户详细信息页面。 您也可以在Asp.net Webforms中添加路由器。请检查以下链接。 的 http://www.shubho.net/2011/02/aspnet-mvp-url-routing-webforms-part3.html

可能的解决方案是......

RouteTable.Routes.MapPageRoute("UProfile",
                                "{ID}",
                                "~/UProfile.aspx",
                                false,
                                new RouteValueDictionary { { "ID", "1" } }, new RouteValueDictionary { { "ID", "[\d]+" } });