У меня есть функция, которая проверяет, существует ли cookie (по имени) или нет:
Private Function cookieExists(ByVal cName As String) As Boolean
For Each c As HttpCookie In Response.Cookies
If c.Name = cName Then Return True
Next
Return False
End Function
У меня есть класс, который обрабатывает cookie специализированным способом, и я хочу консолидировать все связанные с cookie функции к этому классу. Однако я не могу использовать этот код, если я просто перемещаю его от aspx страницы (где он в настоящее время находится) к вышеупомянутому классу, потому что я получаю ошибку: 'Name' Response is not declared.
Я изменил класс для разрешения передачи ссылки на Response
объект:
Public Function cookieExists(ByVal cName As String, ByRef Response As HttpResponse) As Boolean
For Each c As HttpCookie In Response.Cookies
If c.Name = cName Then Return True
Next
Return False
End Function
Мой вопрос: существует ли лучший путь?
HttpContext.Current.Response
HttpContext.Current.Request
HttpContext. Текущее использование Окружающий шаблон разработки Контекста, таким образом, необходимо смочь получить доступ к объекту Ответа от примерно где угодно в коде. Это очень полезно.
Для тех, которые задаются вопросом, Окружающий шаблон Контекста очень прохладен, и детализирован здесь:
http://aabs.wordpress.com/2007/12/31/the-ambient-context-design-pattern-in-net/