我正在表中为用户会话创建一个条目,该条目映射到用于跨域访问 API 的 guid。表中的行看起来像 [guid, cookie] 并在登录时填充。
session.guid = Guid.NewGuid();
session.cookie = FormsAuthentication.GetAuthCookie(sUser.email, false).Value;
我遇到的问题是会话结束时从数据库中删除它。到目前为止,我有这个似乎不起作用。
在 Session_End() 中:
var cookie = HttpContext.Current.Request.Cookies[FormsAuthentication.FormsCookieName];
string cValue = cookie.Value;
using (var db = new xEntities())
{
Session session = db.Sessions.Where(p => p.cookie == cValue).FirstOrDefault();
db.Sessions.Remove(session);
db.SaveChanges();
}
谁能阐明我在这里做错了什么?