您会看到下面的代码,我是如何使用session变量的;
因此,这三个问题是:
它们存储在哪里? (服务器或客户端)
它们是否对每个网页访问者都是唯一的?
完成工作后,可以使用ajax或简单的js代码将其删除吗?否则它将被自动删除。
。
sbyte[][] arrImages = svc.getImagesForFields(new String[] { "CustomerName", "CustomerSurName" });
Dictionary<string, byte[]> smartImageData = new Dictionary<string, byte[]>();
int i = 0;
foreach (sbyte[] bytes in arrImages)
{
smartImageData.Add(fieldNames[i], ConvertToByte(bytes));
i++;
}
Session.Add("SmartImageData", smartImageData);
最佳答案
阅读有关会话here的更多信息。要回答您的问题:
取决于您的配置(进程内,会话状态服务器等),但始终在服务器端。
是的,每个访客都会获得一个唯一的cookie。
您可以通过删除会话cookie(通常是ASP.NET_SessionId
)在客户端将其删除,或者可以通过调用Session.Abandon()
在服务器端将其删除。同样,会话在特定(可配置)的非活动时间段后超时。
关于c# - HttpSessionState在哪里,如何获得优势?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3061708/