【发布时间】:2021-05-19 07:48:20
【问题描述】:
当网站启动时,我有一个功能可以检查是否有用户 cookie-
foreach (var cookie in HttpContextAccessor.HttpContext.Request.Cookies)
{
if (cookie.Key == "OrderLoginDetails")
{
Customer.Cookie = cookie.Value;
}
}
而且效果很好!
当我尝试制作新的 cookie 时,问题就开始了……
如何在布局文件中创建新的 cookie?
我试过这样-
if (Customer.Cookie == null)
{
var newCust = Customer.newCustomer();
var cookieOptions = new CookieOptions
{
Path = "/",
HttpOnly = false,
IsEssential = true, //<- there
Expires = DateTime.Now.AddMonths(1),
};
Response.Cookies.Append("OrderLoginDetails", Customer.CustomerCode + Customer.CustomerMail, cookieOptions);
}
但它不起作用。
最好的问候
【问题讨论】:
-
你说的不起作用是什么意思?有什么错误吗?您是否尝试过调试代码以确保
Response.Cookies.Append被执行? -
我收到 2 个错误 - 1. 当前上下文中不存在名称 'Response' 2. 找不到类型或命名空间名称 'CookieOptions'(您是否缺少 using 指令或程序集参考?)代码在布局页面中,这是问题所在......但我不知道另一种设置cookie的方法
标签: c# asp.net-mvc asp.net-core razor-pages