Non mi riesce ad impostare la sessione ma il campo rs("id_utente") è come se non andasse bene, ho provato a modificare qualcosa, ma nulla sempre stesso errore. e non avendo mai usato questo metodo non so come prendere l'id_utente.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
connetti()
'strsql = "Select count(id_utente) from Utenti where username='" & username.Text & "' and passwd='" & passwd.Text & "'"
strsql = "Select id_utente from Utenti where username='" & username.Text & "' and passwd='" & passwd.Text & "'"
cmdSql = New OleDbCommand(strsql, conn)
'cmdSql.Parameters.Add("username", System.Data.OleDb.OleDbType.VarChar).Value = username.Text
'cmdSql.Parameters.Add("passwd", System.Data.OleDb.OleDbType.VarChar).Value = passwd.Text
'(usa i parametri e non incollare stringhe nelle query)
Dim res As Integer = cmdSql.ExecuteScalar

If res > 0 Then
Session("utente") = rs("id_utente")
Response.Redirect("menu.aspx")
Else
messaggio.Text = "Password o Username errati."
End If
rs = cmdSql.ExecuteReader()

rs.Close()
conn.Close()
End Sub