2011-12-13 146 views
0

我有3个用户:adminuser1user2,他们从数据库中的3级不同的表的时候,他们都去同一个页面,我必须根据用户的ID来显示用户的信息。 ..使用查询字符串

我该怎么做使用查询字符串?

+0

你能更具体吗?听起来像所有你想要的是在查询字符串中传递用户ID,例如'?UserId = {0}`...... – 2011-12-13 20:13:49

+0

您可能想在此添加更多上下文。他们为什么在不同的桌子上?你如何唯一识别用户?你想让页面显示关于用户的内容? (请不要告诉我你正在使用查询字符串来标识当前_authenticated_用户。)正在查询字符串上传递什么信息?您是在谈论在超链接上构建查询字符串,还是关于使用查询字符串从数据库中获取数据? – David 2011-12-13 20:13:58

回答

0

这个不是最佳实践用于在页面间传递用户标识,但是您可以通过在代码中执行此操作来完成。

dim userid as string = request.querystring("userid") 
0

如果用户来自三个不同的表,UNION将帮助将三个查询合并为一个。喜欢的东西

(select username, access from table1) 
UNION 
(select username, access from table2) 
UNION 
(select username, access from table2) 

注:硬编码接取可根据该表中的用户是从

(select username, 'Admin' from table1) 
UNION 
(select username, 'User1' from table2) 
UNION 
(select username, 'User2' from table2) 

在你的页面,您可以加载不同,这取决于接入

0

曾经考虑使用会员框架。然后,您可以直接使用HttpContext.Current.User.Identity.Name,而无需自己连续查询数据库。

0

如果我正确理解你的问题。您发送用户ID。给对方喜欢

page.aspx?Id=1 

但不幸的是我无法从你写的了解将如何接收和使用您的查询。但最简单的方法是使用示例数据列表来显示数据,然后使用数据绑定控件绑定数据。

当您配置数据源时,您可以选择您喜欢的表的列。然后按下WHERE按钮,然后您将进入该屏幕。 datasource configuration

在这里,您先选择列作为你的查询字符串应与 相等的,那么在添加此条件,关闭datasouce配置屏幕,然后一切将在数据列表显示的数据会检查是否有任何CUSTOMER_ID其中一个具有与Qureysting中的ID相同。

有些人可能会认为这是少女的方式来做到这一点,但它的工作原理。希望你可以使用它 。