[英]How to Get The Distinct Data From SQL in the Following Scenario?
我有一个具有递归一对多关系的表Menu
。 该表包含菜单及其子菜单。
当我执行查询时,我得到的结果是:
->Form.....Activity
->Form.....Report
->Review..Activity
->Review..Report
但是我想以以下格式将这些信息存储在C#集合(列表/字典)中。
->Form
Activity
Report
->Review
Activity
Report
注意:我正在C#中使用SQL-Data-Reader从SQL Server 2008中检索信息。
我该如何实现?
由于没有代码,我将用语言解释我的答案。
您可以使用字典或哈希表来使用C#存储数据。
使用字典:
声明一个字典,它将存储键和值列表,即
Dictionary<string, List<string>> dicData = new Dictionary<string, List<string>> ();
然后,当您查询返回数据时,可以执行以下操作。 假设您从DataTable中读取数据。
Foreach(DataRow row in yourDataTable.Rows)
{
if(dicData.ContainsKey(row["firstColumn"]))
{
dicData[row["firstColumn"].ToString()].Add(row["secondColumn"].ToString());
}
else
{
List<string> list = new List<string>();
list.Add(row["secondColumn"].ToString())
dicData.Add(row["firstColumn"].ToString(), list)
}
}
注意:该代码未经测试,但可以使您了解需要执行的操作。 希望能帮助到你
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.