ASP.NET 判断客户端是否为手机的函数

BlogEngine2.0里找到的:

Web.Config:

<appSettings>
    <!-- 这是一个正则表达式,用来标识移动设备。被识别出的移动设备将采用移动版的主题模板 -->
    <add key="BlogEngine.MobileDevices" value="(iemobile|iphone|ipod|android|nokia|sonyericsson|blackberry|samsung|sec-|windows ce|motorola|mot-|up.b|midp-)"/>
  </appSettings>

/// <summary>
        /// The regex mobile.
        /// </summary>
        private static readonly Regex RegexMobile =
            new Regex(
                ConfigurationManager.AppSettings.Get("BlogEngine.MobileDevices"),
                RegexOptions.IgnoreCase | RegexOptions.Compiled);

/// <summary>
///     Gets a value indicating whether the client is a mobile device.
/// </summary>
/// <value><c>true</c> if this instance is mobile; otherwise, <c>false</c>.</value>
public static bool IsMobile
{
    get
    {
        var context = HttpContext.Current;
        if (context != null)
        {
            var request = context.Request;
            if (request.Browser.IsMobileDevice)
            {
                return true;
            }

            if (!string.IsNullOrEmpty(request.UserAgent) && RegexMobile.IsMatch(request.UserAgent))
            {
                return true;
            }
        }

        return false;
    }
}
原文地址:https://www.cnblogs.com/sntetwt/p/3433218.html