Turn: ASP. NET perfect cookies

Source: Internet
Author: User
Tags set cookie setcookie

When I first arrived at the blog site, I first posted some posts to share with you. You can also discuss it.

    1. UsingSystem;
    2.  UsingSystem. Web;
    3.  NamespaceMoosoft. OA. Public
    4. {
    5. /// <Summary>
    6. /// Cookie help class
    7. /// </Summary>
    8. Public ClassCookieshelper

10 .{

11.

12. # region get Cookie

13. // <summary>

14. // obtain the cookie value

15. /// </Summary>

16. // <Param name = "cookiename"> </param>

17. /// <returns> </returns>

18.Public Static StringGetcookievalue (StringCookiename)

19 .{

20.ReturnGetcookievalue (cookiename,Null);

21 .}

22.

23. // <summary>

24. // obtain the cookie value

25. /// </Summary>

26. // <Param name = "cookiename"> </param>

27. // <Param name = "key"> </param>

28. /// <returns> </returns>

29.Public Static StringGetcookievalue (StringCookiename,StringKey)

30 .{

31. httprequest request = httpcontext. Current. request;

32.If(Request! =Null)

33.ReturnGetcookievalue (request. Cookies [cookiename], key );

34.Return"";

35 .}

36.

37. // <summary>

38. // obtain the Cookie's subkey Value

39. // </Summary>

40. // <Param name = "cookie"> </param>

41. // <Param name = "key"> </param>

42. // <returns> </returns>

43.Public Static StringGetcookievalue (httpcookie cookie,StringKey)

44 .{

45.If(Cookie! =Null)

46 .{

47.If(!String. Isnullorempty (key) & cookie. haskeys)

48.ReturnCookie. Values [Key];

49.Else

50.ReturnCookie. value;

51 .}

52.Return"";

53 .}

54.

55. // <summary>

56. // obtain the cookie

57. // </Summary>

58. // <Param name = "cookiename"> </param>

59. // <returns> </returns>

60.Public StaticHttpcookie getcookie (StringCookiename)

61 .{

62. httprequest request = httpcontext. Current. request;

63.If(Request! =Null)

64.ReturnRequest. Cookies [cookiename];

65.Return Null;

66 .}

67.

68. # endregion

69.

70. # region Delete cookie

71.

72. // <summary>

73. // delete a cookie

74. // </Summary>

75. // <Param name = "cookiename"> </param>

76.Public Static VoidRemovecookie (StringCookiename)

77 .{

78. removecookie (cookiename,Null);

79 .}

80.

81. // <summary>

82. // Delete the cookie subkey

83. // </Summary>

84. // <Param name = "cookiename"> </param>

85. // <Param name = "key"> </param>

86.Public Static VoidRemovecookie (StringCookiename,StringKey)

87 .{

88. httpresponse response = httpcontext. Current. response;

89.If(Response! =Null)

90 .{

91. httpcookie cookie = response. Cookies [cookiename];

92.If(Cookie! =Null)

93 .{

94.If(!String. Isnullorempty (key) & cookie. haskeys)

95. Cookie. Values. Remove (key );

96.Else

97. response. Cookies. Remove (cookiename );

98 .}

99 .}

  1. }
  2. # Endregion
  3. # Region setting/modifying cookies
  4. /// <Summary>
  5. /// Set the cookie subkey Value
  6. /// </Summary>
  7. /// <Param name = "cookiename"> </param>
  8. /// <Param name = "key"> </param>
  9. /// <Param name = "value"> </param>
  10. Public Static VoidSetcookie (StringCookiename,StringKey,StringValue)
  11. {
  12. Setcookie (cookiename, key, value,Null);
  13. }
  14. /// <Summary>
  15. /// Set the cookie value
  16. /// </Summary>
  17. /// <Param name = "key"> </param>
  18. /// <Param name = "value"> </param>
  19. Public Static VoidSetcookie (StringKey,StringValue)
  20. {
  21. Setcookie (key,Null, Value,Null);
  22. }
  23. /// <Summary>
  24. /// Set the cookie value and expiration time
  25. /// </Summary>
  26. /// <Param name = "key"> </param>
  27. /// <Param name = "value"> </param>
  28. /// <Param name = "expires"> </param>
  29. Public Static VoidSetcookie (StringKey,StringValue, datetime expires)
  30. {
  31. Setcookie (key,Null, Value, expires );
  32. }
  33. /// <Summary>
  34. /// Set the cookie expiration time
  35. /// </Summary>
  36. /// <Param name = "cookiename"> </param>
  37. /// <Param name = "expires"> </param>
  38. Public Static VoidSetcookie (StringCookiename, datetime expires)
  39. {
  40. Setcookie (cookiename,Null,Null, Expires );
  41. }
  42. /// <Summary>
  43. /// Set cookie
  44. /// </Summary>
  45. /// <Param name = "cookiename"> </param>
  46. /// <Param name = "key"> </param>
  47. /// <Param name = "value"> </param>
  48. /// <Param name = "expires"> </param>
  49. Public Static VoidSetcookie (StringCookiename,StringKey,StringValue, datetime? Expires)
  50. {
  51. Httpresponse response = httpcontext. Current. response;
  52. If(Response! =Null)
  53. {
  54. Httpcookie cookie = response. Cookies [cookiename];
  55. If(Cookie! =Null)
  56. {
  57. If(!String. Isnullorempty (key) & cookie. haskeys)
  58. Cookie. Values. Set (Key, value );
  59. Else
  60. If(!String. Isnullorempty (value ))
  61. Cookie. value = value;
  62. If(Expires! =Null)
  63. Cookie. expires = expires. value;
  64. Response. setcookie (cookie );
  65. }
  66. }
  67. }
  68. # Endregion
  69. # Region add cookie
  70. /// <Summary>
  71. /// Add cookie
  72. /// </Summary>
  73. /// <Param name = "key"> </param>
  74. /// <Param name = "value"> </param>
  75. Public Static VoidAddcookie (StringKey,StringValue)
  76. {
  77. Addcookie (NewHttpcookie (Key, value ));
  78. }
  79. /// <Summary>
  80. /// Add cookie
  81. /// </Summary>
  82. /// <Param name = "key"> </param>
  83. /// <Param name = "value"> </param>
  84. /// <Param name = "expires"> </param>
  85. Public Static VoidAddcookie (StringKey,StringValue, datetime expires)
  86. {
  87. Httpcookie cookie =NewHttpcookie (Key, value );
  88. Cookie. expires = expires;
  89. Addcookie (cookie );
  90. }
  91. /// <Summary>
  92. /// Add as Cookie. values set
  93. /// </Summary>
  94. /// <Param name = "cookiename"> </param>
  95. /// <Param name = "key"> </param>
  96. /// <Param name = "value"> </param>
  97. Public Static VoidAddcookie (StringCookiename,StringKey,StringValue)
  98. {
  99. Httpcookie cookie =NewHttpcookie (cookiename );
  100. Cookie. Values. Add (Key, value );
  101. Addcookie (cookie );
  102. }
  103. /// <Summary>
  104. /// Add as a cookie set
  105. /// </Summary>
  106. /// <Param name = "cookiename"> cookie name </param>
  107. /// <Param name = "expires"> expiration time </param>
  108. Public Static VoidAddcookie (StringCookiename, datetime expires)
  109. {
  110. Httpcookie cookie =NewHttpcookie (cookiename );
  111. Cookie. expires = expires;
  112. Addcookie (cookie );
  113. }
  114. /// <Summary>
  115. /// Add as Cookie. values set
  116. /// </Summary>
  117. /// <Param name = "cookiename"> </param>
  118. /// <Param name = "key"> </param>
  119. /// <Param name = "value"> </param>
  120. /// <Param name = "expires"> </param>
  121. Public Static VoidAddcookie (StringCookiename,StringKey,StringValue, datetime expires)
  122. {
  123. Httpcookie cookie =NewHttpcookie (cookiename );
  124. Cookie. expires = expires;
  125. Cookie. Values. Add (Key, value );
  126. Addcookie (cookie );
  127. }
  128. /// <Summary>
  129. /// Add cookie
  130. /// </Summary>
  131. /// <Param name = "cookie"> </param>
  132. Public Static VoidAddcookie (httpcookie cookie)
  133. {
  134. Httpresponse response = httpcontext. Current. response;
  135. If(Response! =Null)
  136. {
  137. // Specify whether client scripts can be accessed [false by default]
  138. Cookie. HTTPOnly =True;
  139. // Specify a uniform path, which can be accessed through memory
  140. Cookie. Path = "/";
  141. // Configure cross-origin so that all other second-level domain names can be accessed.
  142. // Cookie. Domain = "chinesecoo.com ";
  143. Response. appendcookie (cookie );
  144. }
  145. }
  146. # Endregion
  147. }
  148. }

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.