我想檢查列「名稱」下是否有任何相同的值。如果是的,所以我想檢查下一個相同的值>位大小。我可以用2 for循環做,但我想要的是更簡單的東西。 任何人都可以告訴我如何?比較數據表中的值,如果它們相同,則更改它
我的數據表:
name Bit Size
m1 8 3
m0 9 5
m1 10 2 // Error, should be 11
m2 11 4
我的代碼:
for(int i = 0; i <= Dt.Rows.Count - 1; i++)
{
for(int y = i +1; y <= Dt.Rows.Count - 1, y++)
{
if(Dt.Rows[i]["name"].ToString() == Dt.Rows[y]["Name"].ToString())
if((Convert.ToInt32(Dt.Rows[i]["Bit"].ToString()) + Convert.ToInt32(Dt.Rows[i]["Size"].ToString()) > (Convert.ToInt32(Dt.Rows[y]["Bit"].ToString()) ))
{
// Show Error
MessageBox.Show("Error");
Dt.Rows[y]["Bit"] = Dt.Rows[i]["Bit"];
}
}
}
我不知道有多大你的數據庫是,但你可以使用的GroupBy(X => x.name).Count之間的(),看看在上面的1比你知道哪些名字被多次使用 – user1797792