그래서 내 LINQ 쿼리의 집합을 반환
Dim Query = From c In DB.Something Select New With {.Email = DoDecrypt(c.Email)}
같은이 내 데이터베이스에 암호화 된 이메일 주소를 저장하고 AspGrid에서 암호화되지 않은 이메일 주소를 표시, 광산의 DoDecrypt
기능을 사용하여 디버그 모드의 전자 메일 ...
Linq to datatable 함수를 사용한 후 반환되는 결과는 데이터베이스에서 발견되는 것으로 암호화 된 것입니다.
여기에 무슨 문제가 있습니까? Linq 쿼리는 어떻게 수정해야합니까?
그리고 여기가
Public Shared Function ToDataTable(DB As System.Data.Linq.DataContext, query As Object) As DataTable
If query Is Nothing Then
Throw New ArgumentNullException("query")
End If
Dim cmd As IDbCommand = DB.GetCommand(TryCast(query, IQueryable))
Dim adapter As New SqlDataAdapter()
adapter.SelectCommand = DirectCast(cmd, SqlCommand)
Dim dt As New DataTable("sd")
Try
cmd.Connection.Open()
adapter.FillSchema(dt, SchemaType.Source)
adapter.Fill(dt)
Finally
cmd.Connection.Close()
End Try
Return dt
End Function
당신은 실제로 쿼리를 해결해야
에 IDbCommand = DB.GetCommand으로 라인 희미한에 cmd에서 (TryCast (쿼리 된 IQueryable)) – OrElse
쿼리는 IEnumerable을 할 것이다 지금은 해결되었으므로 IQueryable이 아닙니다. 그것을 바꾼다면 효과가 있습니까? – mattytommo
'System.Collections.Generic.List'1 ..... 형식의 개체를'System.Linq.IQueryable '형식으로 캐스팅 할 수 없습니다. – OrElse