gpt4 book ai didi

c# - 如何在 asp.net c# 中使用 HashSet 比较两个数据集

转载 作者:太空宇宙 更新时间:2023-11-03 16:26:33 25 4
gpt4 key购买 nike

我正在将两个表添加到数据集中,我想检查它们是否相等。

我试过的代码是:

SqlDataAdapter mydat = new SqlDataAdapter("Select Device_Profile_Param+'='+Device_Profile_Default_Value AS SettingsCheck From Device_Profile_Master Where Device_Profile_Name = '" + Label5.Text + "'", con); 
DataTable dt = new DataTable();
mydat.Fill(dt);

DataSet dset = new DataSet();
dset.Tables.Add(dt);

SqlDataAdapter mydata = new SqlDataAdapter("Select Device_Profile_Param+'='+Device_Profile_Default_Value AS Settings From Device_Profile_Master Where Device_Profile_Name = '" + For_Profile_Num.Items[i] + "'", con);
DataTable dt2 = new DataTable();
mydata.Fill(dt2);

dset.Tables.Add(dt2);

var hashSet1 = new HashSet<string>(dset.Tables[0].Rows.Cast<ListItem>().Select(x => x.Value));
var hashSet2 = new HashSet<string>(dset.Tables[1].Rows.Cast<ListItem>().Select(x => x.Value));

var result = hashSet1.SetEquals(hashSet2);
if (result == true)
{
found = 1;
}

我遇到错误DataSet cannot be cast as ListItem。请帮忙。

最佳答案

在将它添加到 HashSet 时定义一些列名...

System.Collections.Hashtable myHashtable1 = new System.Collections.Hashtable();
myHashtable.Add(dset.Tables[0].Rows[0]["Column1"], myDataTable1.Rows[0]["Column2"]);
myHashtable.Add(dset.Tables[0].Rows[1]["Column1"], myDataTable1.Rows[1]["Column2"]);

System.Collections.Hashtable myHashtable2 = new System.Collections.Hashtable();
myHashtable.Add(dset.Tables[1].Rows[0]["Column1"], myDataTable1.Rows[0]["Column2"]);
myHashtable.Add(dset.Tables[1].Rows[1]["Column1"], myDataTable1.Rows[1]["Column2"]);


var result = myHashtable2 .SetEquals(myHashtable1);
if (result == true)
{
found = 1;
}

同样...

希望对你有帮助

关于c# - 如何在 asp.net c# 中使用 HashSet 比较两个数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12402912/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com