Ho creato una funzione che mi ritorna il DataReader risultato di una query Sql. All'esterno della funzione uso il DatReader per leggeri i dati, ma dove posso chiudere il DataReader? Fuori della funzione non è molto bello, come strutturereste il codice?

Private Function GetDatiTabella() As OleDb.OleDbDataReader
Dim conn As OleDb.OleDbConnection
Dim sql As String = "SELECT * .... FROM tabella ...."
Dim cmd As New OleDb.OleDbCommand(sql, conn)
Dim rs As OleDb.OleDbDataReader

rs = cmd.ExecuteReader()
cmd = Nothing

Return rs
End Function

Al Page Load:
Dim rs As OleDb.OleDbDataReader
rs = GetDatiTabella()
Do While rs.Read()
Response.Write(rs("id_commesseRisorse"))
Loop

rs.Close()