Vb.net 使用LINQ查询具有varbinary字段的实体
当我试图查询一个包含varbinary字段的实体时,我得到一个错误: LINQ to实体中不支持LINQ表达式节点类型“ArrayIndex” 我的问题是:Vb.net 使用LINQ查询具有varbinary字段的实体,vb.net,asp.net-mvc-3,linq,entity-framework-4.1,Vb.net,Asp.net Mvc 3,Linq,Entity Framework 4.1,当我试图查询一个包含varbinary字段的实体时,我得到一个错误: LINQ to实体中不支持LINQ表达式节点类型“ArrayIndex” 我的问题是: Dim query = From entity In db.Entity Where entity.Id= Id Select entity.VarBinaryField If query.FirstOrDefault IsNot Nothing Then bytes =
Dim query = From entity In db.Entity
Where entity.Id= Id
Select entity.VarBinaryField
If query.FirstOrDefault IsNot Nothing Then
bytes = query.First.ToArray
Return File(bytes, System.Net.Mime.MediaTypeNames.Application.Octet, "test")
End If
当我检查查询是否为空时,会生成错误
任何建议都将不胜感激
谢谢大家! 我的linq查询中还有一些其他参数没有包括在内。。。正在从引发错误的数组中提取参数,而不是从varbinary字段中提取参数…在模型类中,而不是数据库中,entity.VarBinaryField的类型是什么?我想知道你为什么要申请Array。顺便说一句:您先运行两次查询,然后运行默认查询,然后两次都运行数据库。最好执行:x=query.FirstOrDefault如果x不执行任何操作,请对x执行某些操作。