将数据表搜索转换为 lambda 表达式

Pra*_*bhu 1 .net linq vb.net ado.net lambda

我需要帮助将此 for 循环转换为 VB.NET 中的 LINQ/Lambda 表达式:

For Each dr As DataRow In dt.Rows
    Dim firstName As String = CStr(dr("FirstName")).ToLower()
    Dim lastName As String = CStr(dr("LastName")).ToLower()

    If Not String.IsNullOrEmpty(firstName) AndAlso Not String.IsNullOrEmpty(lastName) Then
        If firstName.ToLower = "john" AndAlso lastName.ToLower = "doe" Then
            Return "Found"
        End If
    End If
Next

Return "Not Found"
Run Code Online (Sandbox Code Playgroud)

谢谢!

rfo*_*olt 5

尝试这个:

    Dim row = dt.AsEnumerable().Where(Function(f) f.Field(Of String)("FirstName").ToLower = "john" AndAlso f.Field(Of String)("LastName").ToLower = "doe").FirstOrDefault()

    Return If(row Is Nothing, "Not Found", "Found")
Run Code Online (Sandbox Code Playgroud)