我正在在ASP.NET(使用C#.NET4)中制作一个小门户网站,用户可以在其中登录并添加,编辑其个人信息(PI)。但是,当特定用户登录时,我没有如何在页面中加载信息(存储在SQL Server DB中)。

例如:如果山姆登录,他可以查看他的pi。当Vicky登录时,她可以查看她的PI。

谁能帮助我?

提前致谢。

有帮助吗?

解决方案

您需要保留登录的用户的ID 会话变量 然后使用它来过滤您获取每个用户信息的查询。

因此,如果用户的ID为278,则您的查询将运行为:

SELECT first_name, last_name, * FROM user_table WHERE user_id = 278

从存储的会话变量如下:

Session["UserId"] = currentUserId;

其他提示

ASP.NET会员提供者 已经为您照顾了这个。您是否考虑过使用它?您可以管理定义的所有身份验证,权限,角色和访问/编辑资料信息。您可以通过会员对象访问数据,并且您无需编写单行SQL即可完成。它将为您节省大量的工作,而不是试图重新发明轮子。

使用其他答案中所述的常规会员资格。然后利用配置文件系统,以便每个用户在登录时可以查看/编辑其信息(根据问题)。警告:ASP.NET配置文件系统仅使用网站项目模板开箱即用。如果要使用Web Application项目模板,请在此处按照以下步骤操作:

ASP.NET:网站与Web应用程序项目

当您启动并运行配置文件时,可以在用户登录时将配置文件数据存储在会话对象中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top