Do you? Or do you actually need the item found itself? If you have the index then wouldn't you just be using it to get the item? DataTable.Select returns an array of DataRows. If no match is found then that array will be empty and if one or more matches are found then the array will contain those rows.