我在工作门户网站上工作,用户可以在其中输入多个个人资料。

我在gridview中显示所有配置文件。我的要求是
应该有一个状态链接及其所有配置文件(以位为单位)。

例:
这是我的gridview:

jobseekerid | Profileid | status

     1           2        Active
     1           3        DeActive
     1           4        DeActive
            ....
            ....


在所有这些中,只有一个配置文件可以处于活动状态。
因此,当用户单击任何非活动配置文件时,它将变为活动状态,然后所有
剩余的个人资料将变为无效。
条件是一次只能激活一个配置文件。 (当他激活一个配置文件时,其余的配置文件将自动变为无效状态。)

现在的问题是,当用户在Gridview中激活一个配置文件时,我无法使所有其余的配置文件都不活动。

我怎样才能做到这一点?

最佳答案

这是一个常见问题,通常可以通过保留用来填充gridview的原始数据集来解决。因此,在您的情况下,应将数据集(或配置文件列表-用于填充gridview的任何数据集)存储在viewstate中(假设它不是太大,否则页面加载会很慢)。然后,当您填充网格视图时,需要为每个单击事件分配一个配置文件ID,以便知道单击了哪个事件。然后,您需要遍历保存在viewstate中的数据集,并将所有数据集(刚刚单击的数据集除外)更新为非活动状态。循环听起来并不那么笨拙……在sql server 2005和2008中,您有一个名为“表”的新数据类型,因此您可以一次将所有其他profileID传递给数据库,以将它们全部更新为非活动状态。

10-06 08:07
查看更多