配置登录控件的asp.net跟踪会话中的配置文件变量?

cla*_*oda 1 c# asp.net asp.net-profiles login-control

我使用visual studio 2010在asp.net上创建了一个带有购物车的网站.我的问题是关于Profile变量和Login Control.

我按照一个非常简单的教程向我的网站添加了一个购物车.

1:购物车示例

正如您在购物车教程中看到的那样,作者使用配置文件来跟踪购物车.

当我这样做的时候,我曾期望购物车与每个不同的用户登录保持一致,因为我们使用的是个人资料而不是会话变量.幸运的是,当我使用登录控件以不同用户身份登录时,购物车实际上会重置.

所以我的问题是,Profile如何跟踪每个用户的购物车.我几乎可以肯定登录控件没有设置会话变量,所以我认为Profile对象不会自动检测登录控件中的其他用户......是吗?

请帮我理解一下,作者不太清楚.

非常感谢!

Pet*_*eld 6

基本上它的工作方式是使用身份验证信息来识别用户.因此,当来自经过身份验证的用户的请求时,框架使用用户名(通常以身份验证cookie的形式)将配置文件信息加载到当前请求中.

对于您提供的示例,因为作者正在使用<anonymousIdentification enabled="true"/>该示例,允许匿名用户也可以使用配置文件信息.

当一个匿名用户发出请求时,AnonymousIdentificationModule模块创建一个GUID,并将其写入到名为.ASPXANONYMOUS永久性Cookie.此GUID将充当ProfileProvider的用户名.