在一个请求中获取多组数据?

时间:2011-01-06 07:45:09

标签: c# asp.net c#-3.0 c#-2.0 daab

我正在一个网站上工作,当用户登录(第一个数据库请求)时,存储过程变量密码和用户ID,然后返回我放入会话中的用户记录以供下一步使用。

在此之后我做了第二个db请求。它返回我放入缓存的用户地址。

你能请求指导我是否有一些方法可以在一个数据库请求中获得两组数据(用户记录和第二个表中的地址)。

PLZ指导我,我正在使用DAAB(​​输入奖品库)进行数据访问。

由于

3 个答案:

答案 0 :(得分:1)

您可以在存储过程中编写两个选择查询 一个接一个地执行两个查询。在单个查询中,您可以在DataSet中执行和接收数据。

ExecuteDataset()

因此将在数据集中返回两个表。你可以得到像

这样的值

dataset.tables(0) dataset.tables(1)

由于

答案 1 :(得分:1)

修改具有多个select语句的SP,如果是2。一个SP中的两个select语句将返回两个记录集。在SQL Management Studio中验证,当您运行SP时,它应该在底部面板中显示多个Grid。

完成SP后,从C#代码调用SP并将结果加载到DataSet中。数据集将有两个表,您可以从不同的表中获取数据

答案 2 :(得分:0)

你可以一次性检索两个结果集,但代码将变得更加不连贯。为什么你需要将两个逻辑上独立的操作合并为一个?您可以使用join来获取一个包含所有数据的结果集,而不是使用这些有问题的方法,但这似乎仍然是错误的。我无法看到一种干净的方式来做你所要求的以及可能获得的任何好处。