BuddyHome,
I understand your frustration and I am sorry to say that I really don't know
of a good workaround. I want to make sure that you understand that we did
not make this decision lightly and explain the problem we are facing.
SqlClient Dev Team has clearly said that this is a bug.
Not quite. The problem is that it is not a bug, you are getting an exception
in your query and we throw an exception. This is not a bug since it was the
way SqlClient was designed to work, the fact that ODBC works in a different
way is immaterial (if unfortunate) to this discussion. This is behavior that
everybody that is currently using SqlClient may be depending on, if we
suddenly stop throwing an exception here applications that are currently
working may break. The bottom line is that we cannot modify the existing
behavior of SqlClient without risking breaking somebody, we can't do it on a
QFE and we can't do it for Whidbey.
We do realize that for many scenarios it is critical to be able to get to
the data retrieved after the exception, we need to be able to do this
without breaking existing applications. In the whidbey alpha we have made
API changes to ado.net that will allow you to get to this data.
Unfortunately it is not possible to make API changes as part of a QFE
release so we don't have any way of backporting this fix back to Everett.