How to Loop through LINQ results (VB.NET)
- by rockinthesixstring
I've got some code to try and loop through LINQ results, but it doesn't seem to be working.
HERE'S THE CODE
Public Sub ProcessRequest(ByVal context As System.Web.HttpContext) Implements System.Web.IHttpHandler.ProcessRequest
' the page contenttype is plain text'
HttpContext.Current.Response.ContentType = "text/plain"
' store the querystring as a variable'
Dim qs As Nullable(Of Integer) = Integer.TryParse(HttpContext.Current.Request.QueryString("ID"), Nothing)
' use the RegionsDataContext'
Using RegionDC As New DAL.RegionsDataContext
'create a (q)uery variable'
Dim q As Object
' if the querystring PID is not blank'
' then we want to return results based on the PID'
If Not qs Is Nothing Then
' that fit within the Parent ID'
q = (From r In RegionDC.bt_Regions _
Where r.PID = qs _
Select r.Region).ToArray
' now we loop through the array'
' and write out the ressults'
For Each item As DAL.bt_Region In q
HttpContext.Current.Response.Write(item.Region & vbCrLf)
Next
End If
End Using
End Sub
HERE'S THE ERROR
Public member 'Region' on type
'String' not found. Description: An
unhandled exception occurred during
the execution of the current web
request. Please review the stack trace
for more information about the error
and where it originated in the code.
Exception Details:
System.MissingMemberException: Public
member 'Region' on type 'String' not
found.
Source Error:
Line 33: ' and
write out the ressults Line 34:
For Each item In q Line 35:
HttpContext.Current.Response.Write(item.Region
& vbCrLf) Line 36:
Next Line 37:
Source File:
E:\Projects\businesstrader\App_Code\Handlers\RegionsAutoComplete.vb
Line: 35
Stack Trace:
[MissingMemberException: Public member
'Region' on type 'String' not found.]
Microsoft.VisualBasic.CompilerServices.Container.GetMembers(String&
MemberName, Boolean ReportErrors)
+509081 Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGet(Object
Instance, Type Type, String
MemberName, Object[] Arguments,
String[] ArgumentNames, Type[]
TypeArguments, Boolean[] CopyBack)
+222 BT.Handlers.RegionsAutoComplete.ProcessRequest(HttpContext
context) in
E:\Projects\businesstrader\App_Code\Handlers\RegionsAutoComplete.vb:35
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
+181 System.Web.HttpApplication.ExecuteStep(IExecutionStep
step, Boolean& completedSynchronously)
+75
Can anyone tell me what I'm doing wrong?