我有两个数据库表,一个是类别表,第二个是类别值表。
对于每个类别,我需要创建一个包含第二个表值的下拉列表。 第二步是将这些动态创建的下拉列表放在类似于formview的组件中以更新,删除update并从填充了第三个db表的GridView中获取SelectedValue。
这样做的最佳方式是什么?
答案 0 :(得分:0)
如果不知道如何获取数据,很难给出准确的答案,但您可以考虑两种广泛的方法。 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,当它改变它发出新下拉的时间时。