2011-08-24 41 views
0

我将注册用户存储到数据库db_register。
我想在登录时将每个用户的ID存储到一个数组中。
如何将每个用户ID存储到数组中?查看我的ASP.NET网页中的活动用户

+0

请显示一些信息来源...你有什么试过的?什么不行?任何错误消息/异常? – Yahia

回答

3

如果您正在使用FormsAuthentication,

  1. 你会得到所有用户Membership.GetAllUsers();
  2. 它返回一个MembershipUserCollection
  3. 枚举通过MembershipUser该集合。
  4. 你会看到一个名为MembershipUser.IsOnline

一个布尔属性填充该集合在GridView中,你可以看到谁是网上的所有用户。

+0

没错,但你是说这不适用于Windows或自定义身份验证? –

+0

@ Henk Holterman:我担心OP可能只有每个用户的登录ID和密码 – naveen

0

有多种方式,你可以做到这一点,我想你需要的,如果你不使用FormsAuthentication提供有关你如何控制登录等

更多detaisl和你不想要将登录用户状态保存到数据库,那么我会说你最好的选择是在你的应用程序状态下拥有一个登录用户的集合/列表。因此,当用户登录时,将其添加到列表中。喜欢的东西:

(List<string>)(Application["loggedUsers"]).Add(loggedonusername); 

然后,seprate页面上,你可以绑定一个网格/中继器等,以应用[“loggedUsers”。

当用户注销或其会话结束时,将从条目状态中删除条目。

或者,如果您有权修改数据库,则可以向用户表添加一个字段(如果有的话),表示用户是否已登录 - 这将代替将用户存储在应用程序状态中。

+0

这个代码使用哪个页面? – Roshan

+0

不确定我是否正在关注你的问题Roshan – pedrodg

+0

你能提供一些代码来显示你在做什么吗? – pedrodg