/*By Jiangong SUN*/
CookieManager.cs:
public static class CookiesManager
{
public static string SelectedCulture
{
get
{
return GetCookieVar(ECookieKeys.SelectedCulture);
}
set
{
SetCookieVar(ECookieKeys.SelectedCulture, value);
}
}
}
private static string GetCookieVar(ECookieKeys varName)
{
return GetCookieVar(varName, null);
}
private static string GetCookieVar(ECookieKeys varName, string defaultValue)
{
try
{
// read variable
var cookie = HttpContext.Current.Request.Cookies[varName.ToString()];
if (cookie == null)
return defaultValue;
return cookie.Value;
}
catch (Exception e)
{
Log.Error(e);
throw;
}
}
private static void SetCookieVar(ECookieKeys varName, object value)
{
HttpContext.Current.Request.Cookies.Remove(varName.ToString());
HttpContext.Current.Response.Cookies[varName.ToString()].Value = value.ToString();
HttpContext.Current.Response.Cookies[varName.ToString()].Expires = DateTime.Now.AddHours(12);
}
public static void RemoveAll()
{
foreach (string key in HttpContext.Current.Request.Cookies.AllKeys)
// Delete the key
HttpContext.Current.Request.Cookies.Remove(key);
}
ECookieKey.cs:
public enum ECookieKeys
{
/// <summary>
/// Selected Culture in DDL Cultures
/// </summary>
SelectedCulture,
/// <summary>
/// Code of country
/// </summary>
CountryCode,
/// <summary>
/// Culture
/// </summary>
CurrentCulture
}
Enjoy coding !