我对网站实现了url重写:
“~/name/”重写为"~/index.aspx?id=name"
其中name为动态变化,可以为name,home等等
其网页下有连接
源地址为"~/index.aspx?id=home"
现在点击地址变为"~/name/index.aspx?id=home"
而无法实现跳转

解决方案 »

  1.   

    没太明白。
    我的重写配置规则为:
     <add  url="/name/"
    mappedUrl="/index.aspx?id=name"/>
    而后在UrlRemapper中
    foreach (XmlNode node in nodes)
      {
         url = node.Attributes["url"].Value;
         if (Regex.Match(currentUrl, url, RegexOptions.IgnorePatternWhitespace).Success)
         {
          mappedUrl = node.Attributes["mappedUrl"].Value;
          }
       }
       url = currentUrl;
       if (currentUrl == mappedUrl)
        {
        mappedUrl = "/index.aspx?";
        url = url.Replace("~/", ""); url = url.Replace("/", ""); mappedUrl += "id=";
         mappedUrl += url;
    }
        context.RewritePath(mappedUrl);
    是在哪里修改?
      

  2.   

    错了,没有前两行,直接在UrlRemapper.cs里实现的
      

  3.   

    用的最土的办法,直接硬改
    if (currentUrl == mappedUrl)
      {  
    mappedUrl = "/musician.aspx?";
    url = url.Replace("~/", ""); url = url.Replace("/", "");
     mappedUrl += "id=";
    mappedUrl += url;
     }
      context.RewritePath(mappedUrl);