gpt4 book ai didi

c# - 如何重写 Browser.IsMobileDevice 是 ASP.NET MVC4 应用程序?

转载 作者:行者123 更新时间:2023-12-01 08:01:23 30 4
gpt4 key购买 nike

我正在寻找一种方法,将 HttpContext.Current.Request.Browser.IsMobileDevice 设置为 true,用于未由 MVC4 和 51 Degrees.mobi 检测到的自定义移动设备,该设备也在应用程序中使用。

我在 Global.asax.cs 中尝试过:

protected void Application_PreRequestHandlerExecute(Object sender, EventArgs e)
{
HttpContext.Current.Request.Browser.IsMobileDevice = true;
}

但是我遇到了编译错误:

Property or indexer 'System.Web.Configuration.HttpCapabilitiesBase.IsMobileDevice' cannot be assigned to -- it is read only

使用 51 Degrees.mobi、jquery、jquery-ui 和 jquery-ui-mobile。

最佳答案

该属性是由客户端发送到服务器的请求设置的,以便您检查服务器上的浏览器用户代理,这就是为什么它不允许更改。

如果您想更改服务器上的用户代理,您需要添加此行:

HttpContext.SetOverriddenBrowser(BrowserOverride.Mobile);

如果您知道可以手动设置用户代理:

HttpContext.SetOverriddenBrowser("Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7");

要清除覆盖,您需要:

HttpContext.ClearOverriddenBrowser();

看看这个 page 。或者如何在这个link中覆盖mvc中的默认显示模式

关于c# - 如何重写 Browser.IsMobileDevice 是 ASP.NET MVC4 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19606121/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com