Reputation: 171
How can I compare two string values in VB.NET?
I've tried compare and equals functions, but it's not giving me the correct result. What I'm trying to compare is as follows. Also, is the code is correct?
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As New OleDb.OleDbConnection
Dim ds As New DataSet
Try
con.ConnectionString = "Provider=SQLOLEDB;Data Source=HP-PC\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=dbname"
con.Open()
Catch
MsgBox("Error in connection")
End Try
Dim da As OleDb.OleDbDataAdapter
Dim sql As String
sql = "select * from patientprofile"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "patientprofile")
Dim dr As DataRow
Dim i As Integer
i = 0
With ds.Tables("patientprofile")
For Each dr In .Rows
If String.Equals(.rows(i).Item("name"), TextBox1.Text) Then
textbox1.text = .rows(i).item("age")
End If
i = i + 1
Next
End With
End Sub
End Class
Upvotes: 0
Views: 8696
Reputation: 664
Use this code:
If (String.Compare(.rows(i).Item("name").ToString(), TextBox1.Text) = 0) Then
' Do something
Else
' Do something else
End If
I have fixed the code now. Thanks @Moayad Mardini.
Upvotes: -2
Reputation: 12503
why not
If .rows(i).Item("name").ToString() = TextBox1.Text Then
'Other Stuff
End If
Upvotes: 5
Reputation: 26190
Just to be absolutely sure, try this:
with ds.Tables("patientprofile")
For Each dr In .Rows
if String.Equals(.rows(i).Item("name").ToString(), TextBox1.Text) then
textbox1.text=.rows(i).item("age").ToString()
End If
i = i + 1
Next
end with
Upvotes: 2