gpt4 book ai didi

c# - 在 C# 中测试 DataColumn 值的相等性

转载 作者:太空宇宙 更新时间:2023-11-03 20:40:17 24 4
gpt4 key购买 nike

当列类型未知时,我编写了一些代码来测试 DataTables 中列值之间的相等性。

直接这样测试:

row["Foo"] == row["Bar"]

总是返回 false,大概是因为对象的 Equals 实现使用了 ReferenceEquals。

所以我采取了:

row["Foo"].ToString() == row["Bar"].ToString()

这行得通(至少对于我目前遇到的情况是这样),但它似乎有点,好吧,古怪。

谁能想到我不应该这样做的原因,或者建议更好的方法?请记住,我在设计时不知道列类型,因此无法进行转换。

谢谢

大卫

最佳答案

试试 row["Foo"].Equals(row["bar"])

当您使用 == 比较对象并且没有预定义或用户定义的 == 运算符时,C# 将使用引用相等性来比较它们。如果你想调用Equals方法,你需要把它写成一个方法调用。

关于c# - 在 C# 中测试 DataColumn 值的相等性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3118334/

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