如何使用viewstate比较两个对象

时间:2014-04-10 05:30:49

标签: asp.net

如何使用viewstate比较两个对象。 下面是什么意思。

if (!((byte[])ViewState["ROW"]).SequenceEqual(obj.RowID))
{
    return null
}

有人可以帮忙吗

2 个答案:

答案 0 :(得分:0)

  

以下是什么意思。

基本上,SequenceEqual是一个LINQ Enumerable扩展函数,用于确定源序列(例如byte[])是否等于另一个序列。

假设您在提供的代码中比较两个字节数组(序列),如果它们的元素序列都相等,那么您将获得true否则,false就是结果。

例如,以下序列为等,SequenceEqual将返回true

byte[] chars1 = {56,32,12,32,65, 87};
byte[] chars2 = {56,32,12,32,65, 87};

bool res = chars1.SequenceEqual(chars2); // Will return true

答案 1 :(得分:0)

  1. ViewState [" ROW"] :此部分将检索存储在密钥ViewState

    <的ROW中的数据/ LI>
  2. (byte [])ViewState [&#34; ROW&#34;] :此部分将cast您的数据存储在ViewState 到字节数组< /强>

  3. SequenceEqual :来自System.Linq的扩展方法,用于检查两个序列是否相同

  4. ((byte [])ViewState [&#34; ROW&#34;])。SequenceEqual(obj.RowID):比较ViewState["Row"]和{{的序列1}}

  5. if(!((byte [])ViewState [&#34; ROW&#34;])。SequenceEqual(obj.RowID)):这将返回{{1}如果obj.RowIDnull的序列不相同。