重定向到 ASP.NET 移动网页

更新:2007 年 11 月

如果您创建的应用程序有一个适合桌面浏览器的用户界面,还有一个适合移动应用程序的用户界面,则需要一种机制将移动设备客户重定向到移动网页。

由于某些设备不支持 Cookie,需考虑是否希望应用程序依赖于 Cookie 来运行。有关更多信息,请参见控制会话状态

如果应用程序不使用 Cookie,可以在 Microsoft ASP.NET 站点中使用以下代码重定向到 ASP.NET 移动 Web 应用程序。

<script runat="server" language="c#">
    public void Page_Load(Object sender, EventArgs e) 
    {
        if (Request.Browser["IsMobileDevice"] == "true" ) 
        {
            Response.Redirect("MobileDefault.aspx");
        }
        else 
        {
            Response.Redirect("DesktopDefault.aspx");
        }
    }
</script>

由于某些设备不接受相对 URL,因此还必须在 Web.config 文件中将 <httpRuntime> 元素的 useFullyQualifiedRedirectUrl 属性设置为 true。这会向客户端发送完全限定的 URL,在 URL 的末尾追加有会话 ID。如果要保留会话状态,必须指定相对 URL,然后将该 URL 转换为完全限定的 URL。下面的示例显示了此配置设置。

<configuration>
  <system.web>
    <httpRuntime useFullyQualifiedRedirectUrl = "true" />
  </system.web>
</configuration>

请参见

概念

用户控件

控制会话状态

参考

httpRuntime 元素(ASP.NET 设置架构)

其他资源

应用程序开发人员指南

开发 ASP.NET 移动网页