Вспомогательный класс ASP.NET HttpCookie - PullRequest
1 голос
/ 03 августа 2009

Я написал этот служебный класс для сохранения и получения HttpCookies.

Кажется, он не работает, т. Е. Cookie не извлекается ...

public class AspNetUtil
    {
        private Page _page = null;

        public AspNetUtil(Page page)
        {
            _page = page;
        }

        public bool SaveInCookie(string cookieName, string valueKey, string valueToBeStored, int expiryTimeInMinutes)
        {
            bool success = false;

            try
            {
                HttpCookie cookie = null;

                if(_page.Request.Cookies[cookieName] == null)
                {
                    cookie = new HttpCookie(cookieName);
                }
                else
                {
                    cookie = _page.Request.Cookies[cookieName];
                }

                cookie.Values.Add(valueKey, valueToBeStored);

                cookie.Expires = DateTime.Now.AddMinutes(expiryTimeInMinutes);

                _page.Response.Cookies.Add(cookie);
            }
            catch(Exception ex)
            {
                success = false;

                throw ex;
            }

            return success;
        }

        public string GetCookieValue(string cookieName, string valueKey)
        {
            string cookieValue = string.Empty;

            try
            {
                cookieValue = (string)_page.Response.Cookies[cookieName].Values[valueKey];
            }
            catch (Exception ex)
            {
                cookieValue = string.Empty;
                throw ex;
            }

            return cookieValue;
        }
    }

Может кто-нибудь сказать мне, в чем может быть проблема?

1 Ответ

5 голосов
/ 03 августа 2009

Я думаю, что ваш "Response" должен быть "Request" в функции GetCookieValue

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...