2017-09-13 39 views
-1

鑑於代碼正常工作,但在重定向檢查器上檢查頁面url時,它會給出錯誤,因爲可能會影響應用性能的太多重定向。如何更新查詢字符串,而不使用影響應用性能的response.redirect

如果(的Request.QueryString [空]!= NULL){ 串 = LastIndexOFUrl Request.RawUrl.Substring(Request.RawUrl.LastIndexOf( '/')+ 1);

 if (lang == "eng") 
     { 
      //Session["ServiceName"] = Request.QueryString[null].ToString(); 

      // 
      dt2 = FEManager.GetOurServiceByID(CommonFunction.GetLangType(), LastIndexOFUrl); 

      if (dt2.Rows.Count > 0) 
      {     
       string Name_En = dt2.Rows[0]["URLEng"].ToString(); 
       Name_En = Regex.Replace(Name_En, "[^0-9A-Za-z -]", "").ToLower().Replace(' ', '-'); 

       if (Convert.ToString(Session["ServiceName"]) != Name_En) 
       { 
        Session["ServiceName"] = Name_En; 
        Response.Redirect(CommonFunction.GetLangWiseRedirectLink(1428, 1429) + "/" + Name_En); 
       } 
       else 
        Session["ServiceName"] = Name_En; 
      } 
      //   
     } 
     else 
     { 
      Session["ServiceName"] = Request.RawUrl.Substring(Request.RawUrl.LastIndexOf('/') + 1); 

      //temp code: 
      dt1 = FEManager.GetOurServiceByID(CommonFunction.GetLangType(), Session["ServiceName"].ToString()); 
      if (dt1.Rows.Count > 0) 
      { 

       if (Session["ServiceName"].ToString() != dt1.Rows[0]["URLAr"].ToString()) 
       { 
        Response.Redirect(CommonFunction.GetLangWiseRedirectLink(1428, 1429) + "/" + dt1.Rows[0]["URLAr"].ToString()); 
       } 
       Session["ServiceName"] = dt1.Rows[0]["URLAr"].ToString(); 
      } 
     } 
     string sessionData1 = Session["ServiceName"].ToString(); 
    } 
    else 
    { 
     if (Session["ServiceName"] == null) 
     { 
      Response.Redirect(CommonFunction.GetLangWiseRedirectLink(1342, 1343)); 
     } 
     else 
     { 
          Response.Redirect(CommonFunction.GetLangWiseRedirectLink(1428, 1429) + "/" + Session["ServiceName"].ToString()); 
     } 
    } 

    dt = FEManager.GetOurServiceByID(CommonFunction.GetLangType(), Session["ServiceName"].ToString()); 

    if (dt.Rows.Count > 0) 
    { 
     ltContent.Text = dt.Rows[0]["longDesc"].ToString(); 
     ltHeader.Text = dt.Rows[0]["name"].ToString(); 
     hdnID.Value = dt.Rows[0]["ID"].ToString(); 
     ((DotNetNuke.Framework.CDefault)this.Page).Title = dt.Rows[0]["pageTitle"].ToString(); 
    } 
+0

'它給錯誤提供了太多的重定向,這可能會影響應用程序的性能。請包括該錯誤的截圖(例如,以便我們可以看到它是否是瀏覽器說的)。什麼是原始網址?什麼是您重定向到的URL? – mjwills

+0

在Chrome開發工具中,如果您可以訪問網絡選項卡,請勾選「保留日誌」,然後觸發該問題(幷包含重定向網址的屏幕截圖),這也會有所幫助。 – mjwills

回答

0

如果你得到「過多的重定向」它幾乎總是因爲你已經被重定向到同一頁面中創建重定向的無限循環。

在調試器中遍歷代碼並仔細檢查重定向URL。