0

我在一个同事网站上工作,他错误地放置了一个显示 TypeID 而不是 TypeName 的网格视图。我想输入该类型的实际名称,而不是任意 ID 号,就像他拥有它一样。我看到他在页面上有两个“ObjectDataSource”——一个用于 Type,一个用于 Item。Items 包含该项目是什么 TYPE 的 ID,它都在 Items 数据源中。他正在拉这个 ID 来填充 gridview。我想使用该 ID 从其他数据源中提取名称,并将该名称放入该特定列的网格视图中。这可以做到吗?我可以在 gridview 上使用两个不同的数据源吗?

4

1 回答 1

4

如果我理解这一点,那么您拥有的是两个执行此操作的数据源:

1) SELECT ID, Item, ItemTypeID FROM Item
2) SELECT ID, ItemType FROM ItemTypes 

而且您希望项目名称和项目类型显示在网格中。

如果您可以在网格上使用这两个来源,请回答您的基本问题:是的。但这不是执行操作的最有效方式,因为您需要为第一行中的每一行遍历第二个数据源。

更好的方法是将两个数据源连接在一起,并且只有一个。

将第一个数据源的 SELECT 语句修改为以下几行:

SELECT i.ID, i.Item, t.ItemType FROM Item i INNER JOIN ItemTypes t ON i.ItemTypeId = t.ID;
于 2008-10-31T16:52:24.770 回答