コード例 #1
0
        /// <summary>
        /// Idenrifica se trabalha sem cookie.
        /// </summary>
        /// <param name="context"></param>
        /// <param name="doRedirect"></param>
        /// <param name="cookieMode"></param>
        /// <returns></returns>
        internal static bool UseCookieless(HttpContext context, bool doRedirect, System.Web.HttpCookieMode cookieMode)
        {
            switch (cookieMode)
            {
            case System.Web.HttpCookieMode.UseUri:
                return(true);

            case System.Web.HttpCookieMode.UseCookies:
                return(false);

            case System.Web.HttpCookieMode.AutoDetect:
                if (context == null)
                {
                    context = HttpContext.Current;
                }
                if (context == null)
                {
                    return(false);
                }
                if (context.Request.Browser.Cookies && context.Request.Browser.SupportsRedirectWithCookie)
                {
                    string cookieValue = context.CookielessHelper.GetCookieValue('X');
                    if ((cookieValue != null) && (cookieValue == "1"))
                    {
                        return(true);
                    }
                    string str2 = context.Request.Headers["Cookie"];
                    if (string.IsNullOrEmpty(str2))
                    {
                        string str3 = context.Request.QueryString["AspxAutoDetectCookieSupport"];
                        if ((str3 != null) && (str3 == "1"))
                        {
                            context.CookielessHelper.SetCookieValue('X', "1");
                            return(true);
                        }
                        if (doRedirect)
                        {
                            context.CookielessHelper.RedirectWithDetection(null);
                        }
                    }
                    return(false);
                }
                return(true);

            case System.Web.HttpCookieMode.UseDeviceProfile:
                if (context == null)
                {
                    context = HttpContext.Current;
                }
                if (context == null)
                {
                    return(false);
                }
                return(!context.Request.Browser.Cookies || !context.Request.Browser.SupportsRedirectWithCookie);
            }
            return(false);
        }
コード例 #2
0
 /// <summary>
 /// Redireciona com detecção se for requerido.
 /// </summary>
 /// <param name="redirectPath"></param>
 /// <param name="cookieMode"></param>
 internal void RedirectWithDetectionIfRequired(string redirectPath, System.Web.HttpCookieMode cookieMode)
 {
     Init();
     if ((cookieMode == System.Web.HttpCookieMode.AutoDetect) && (_Context.Request.Browser.Cookies && _Context.Request.Browser.SupportsRedirectWithCookie))
     {
         string cookieValue = GetCookieValue('X');
         if ((cookieValue == null) || (cookieValue != "1"))
         {
             string str2 = _Context.Request.Headers["Cookie"];
             if (string.IsNullOrEmpty(str2))
             {
                 string str3 = _Context.Request.QueryString["AspxAutoDetectCookieSupport"];
                 if ((str3 != null) && (str3 == "1"))
                 {
                     SetCookieValue('X', "1");
                 }
                 else
                 {
                     RedirectWithDetection(redirectPath);
                 }
             }
         }
     }
 }
コード例 #3
0
        static void Main(string[] args)
        {
            // <Snippet2>
            // Get the applicaqtion configuration.
            Configuration configuration =
                WebConfigurationManager.OpenWebConfiguration(
                    "/aspnetTest");

            // Get the section.
            AnonymousIdentificationSection anonymousIdentificationSection =
                (AnonymousIdentificationSection)configuration.GetSection(
                    "system.web/anonymousIdentification");

            // </Snippet2>


            // <Snippet3>
            // Get Cookieless.
            System.Web.HttpCookieMode cookieless =
                anonymousIdentificationSection.Cookieless;
            Console.WriteLine("Cookieless: {0}",
                              cookieless);
            // </Snippet3>

            // <Snippet4>
            // Get CookieName.
            string cookieName =
                anonymousIdentificationSection.CookieName;

            Console.WriteLine("Cookie name: {0}",
                              cookieName);
            // </Snippet4>

            // <Snippet5>
            // Get CookiePath.
            string cookiePath =
                anonymousIdentificationSection.CookiePath;

            Console.WriteLine("Cookie path: {0}", cookiePath);
            // </Snippet5>

            // <Snippet6>
            // Get CookieProtection.
            System.Web.Security.CookieProtection cookieProtection =
                anonymousIdentificationSection.CookieProtection;
            Console.WriteLine("Cookie protection: {0}",
                              cookieProtection);
            // </Snippet6>

            // <Snippet7>
            // Get CookieRequireSSL.
            bool cookieRequireSSL =
                anonymousIdentificationSection.CookieRequireSSL;

            Console.WriteLine("Cookie require SSL: {0}",
                              cookieRequireSSL.ToString());
            // </Snippet7>

            // <Snippet8>
            // Get CookieSlidingExpiration.
            bool cookieSlidingExpiration =
                anonymousIdentificationSection.CookieSlidingExpiration;

            Console.WriteLine("Cookie sliding expiration: {0}",
                              cookieSlidingExpiration.ToString());
            // </Snippet8>

            // <Snippet9>
            // Get CookieTimeout.
            TimeSpan cookieTimeout =
                anonymousIdentificationSection.CookieTimeout;

            Console.WriteLine("Cookie timeout: {0}",
                              cookieTimeout.ToString());
            // </Snippet9>


            // <Snippet10>
            // Get Domain.
            string domain =
                anonymousIdentificationSection.Domain;

            Console.WriteLine("Anonymous identification domain: {0}",
                              domain);
            // </Snippet10>

            // <Snippet11>
            // Get Enabled.
            bool aIdEnabled =
                anonymousIdentificationSection.Enabled;

            Console.WriteLine("Anonymous identification enabled: {0}",
                              aIdEnabled.ToString());
            // </Snippet11>
        }
コード例 #4
0
 // Constructors
 public HttpSessionStateContainer(string id, ISessionStateItemCollection sessionItems, System.Web.HttpStaticObjectsCollection staticObjects, int timeout, bool newSession, System.Web.HttpCookieMode cookieMode, SessionStateMode mode, bool isReadonly)
 {
 }