我有两个数据库表,一个是类别表,第二个是类别值表。
对于每个类别,我需要使用第二个表的值创建一个下拉列表。第二步是将这些动态创建的下拉列表放在一个类似于 formview 的组件中,以更新、删除更新并从填充了第三个 db 表的 GridView 中获取 SelectedValue。
做这个的最好方式是什么?
在不知道如何获取数据的情况下,很难给出准确的答案,但您可以考虑两种广泛的方法。用于遍历类别的 foreach 循环,它将类别 id 传递给为该类别构建下拉列表的函数。
foreach category in categories
{
BuildDropDown(category.ID);
}
private void BuildDropDown(int id)
{
var values = GetValuesByCategoryID(id)
foreach value in values
{
ddl.Items.Add(new ListItem(value, value.Id));
}
}
或者,另一种方法是在加载页面时获取所有数据。如果您的数据在 2 个表中,则:
SELECT *
FROM tblCategory AS C
INNER JOIN tblCategoryValue AS CV ON CV.FKCategoryID = C.CategoryID
然后调用它并遍历跟踪 CategoryID,当它发生变化时,是时候发出一个新的下拉列表了。