2015-06-18 55 views
0

我有一個ASP.NET 4.5 Web窗體應用程序利用Bootstrap。 http://goo.gl/GZZp9rASP.NET Web窗體切換從Site.Mobile.Master

我有一個問題,即Site.Mobile.Master被利用時,每當該網站被呈現在額外的小ViewPort。由於使用Bootstrap,我不需要這個Site.Mobile.Master。

我已經實現了一個解決方案,該解決方案將導致Site.Mobile.Master不呈現,而只是使用Site.Master。

public partial class Site_Mobile : System.Web.UI.MasterPage 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     var AlternateView = "Desktop"; 
     var switchViewRouteName = "AspNet.FriendlyUrls.SwitchView"; 
     var url = GetRouteUrl(switchViewRouteName, new { view = AlternateView, __FriendlyUrls_SwitchViews = true }); 
     url += "?ReturnUrl=" + HttpUtility.UrlEncode(Request.RawUrl); 
     Response.Redirect(url); 
    } 
} 

上述解決方案由於302重定向導致GoogleBot出現問題。

有人指出: 「當用戶代理是谷歌手機在請求您的主頁您的網站以302響應重定向到

/__ FriendlyUrls_SwitchView RETURNURL =/

,然後要求是什麼? 302再次重定向到/

我已閱讀,我不能簡單地刪除Site.Mobile.Master。

是否有更好的解決方案,不會使這個Site.Mobile.Master爲超小型ViewPort?

回答

0

我不確定使用此解決方案有什麼好處。

但希望這可以解決302對GoogleBot不利的重定向。

<browserCaps> 
    <result type="System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 
    <filter>isMobileDevice=false</filter> 
</browserCaps>