dbModel2.TimeMark==model.TimeMark
false
Convert.ToBase64String(dbModel2.TimeMark)
"AAAAAAAANsk="
Convert.ToBase64String(model.TimeMark)
"AAAAAAAANsk="
Convert.ToBase64String(dbModel2.TimeMark)==Convert.ToBase64String(model.TimeMark)
trueTimeMark是数据库里的timestamp类型, c#里面是byte[]请问, 两个byte[]如何比较呢? 代码中用==和equal返回false, 转换成字符串就可以了.
2 回答
GCT1015
TA贡献1827条经验 获得超4个赞
数组是引用类型,你直接用==和equals比较的是引用(由于是不同的引用当然结果是false)。3.0以上可以用linq:
byte[] a, b; //初始化 //LINQ:要求C# 3.0以上 bool same = a.SequenceEqual(b); //更早版本可以用 bool same = a.Length == b.Length; for(int i=0;i < a.Length; i++) { if (!same) break; same = a[i] == b[i]; }
- 2 回答
- 0 关注
- 391 浏览
添加回答
举报
0/150
提交
取消