每次需要时使用 Request.Browser.IsMobileDevice 或将信息放在 Session 变量中哪个更有效?

What is more efficient using Request.Browser.IsMobileDevice each time needed or placing the information in a Session variable?

为了使我的 Web 应用程序具有响应能力,我使用 Request.Browser.IsMobileDevice 来检测请求是否来自移动设备,如果是,则在页面中进行特定更改以使其适合移动设备或重定向到另一个页面。这必须进行多次。为了在一个页面上使用,我将信息放在一个隐藏字段中,这样就可以在服务器端和客户端访问它。从一个页面移动到另一个页面时,我必须再次检测设备是否移动,每次使用 Request.Browser.IsMobileDevice 或将信息保存在 Session 变量中并从那里访问信息哪个更有效?

Request.Browser.IsMobileDevice是一个属性,其值由请求上下文判断(例如HTTPheader中的user-agent信息)。该框架将构建上下文,无论您是否使用它。同时判决的成本也很低。那为什么不直接使用 built-in 函数呢?将其存储在 session 中会使一切变得更加复杂。