Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ==是否将始终对SQL中的二进制文件执行SequenceEqual()?_C#_Sql_.net_Sql Server_Linq To Sql - Fatal编程技术网

C# ==是否将始终对SQL中的二进制文件执行SequenceEqual()?

C# ==是否将始终对SQL中的二进制文件执行SequenceEqual()?,c#,sql,.net,sql-server,linq-to-sql,C#,Sql,.net,Sql Server,Linq To Sql,我需要比较由Linq2sql执行的查询中的二进制值 table1.FirstOrDefault(r => r.ID.SequenceEqual(id))//ID and id are binary/byte[]. 但是Linq2sql正在抛出异常,因为它没有为SQL定义,所以无法在其中执行SequenceEqual 我发现它创建了一个新的Compare方法来混淆Linq,从而允许它 但后来我发现,==也能正常工作,因为SQL总是逐字节比较二进制文件 但由于我看到的答案并没有带来这个简单的

我需要比较由Linq2sql执行的查询中的二进制值

table1.FirstOrDefault(r => r.ID.SequenceEqual(id))//ID and id are binary/byte[].
但是Linq2sql正在抛出异常,因为它没有为SQL定义,所以无法在其中执行
SequenceEqual

我发现它创建了一个新的
Compare
方法来混淆Linq,从而允许它

但后来我发现,
==
也能正常工作,因为SQL总是逐字节比较二进制文件

但由于我看到的答案并没有带来这个简单的解决方案,我想知道它是否真的会一直有效


那么,我在这里遗漏了什么陷阱吗?

正如@Sonal所说,
=
将始终用于比较
字节[]
或任何其他支持相等比较的数据类型,但是您提到的问题没有检查相等,但它要求使用大于或小于运算符(
==应使用Sql执行。请查看此链接,谢谢。投票结果已确定。但我将等待,因为第一个回答的实际上是Sql,所以我将查看他们是否在此处发布答案。