I’ve been digging deep into SQL Server 2005’s CLR integration over the last few days. I am surprised by several specific omissions. My guess is that they have been dropped because of time constraints:
- Server-side cursor in Managed Code (SqlResultSet) is now missing and will probably be MIA in the release.
- Good solution for translating a SqlDataReader’s schema into SqlMetaData (which is used with SqlDataRecord to share schema with the client).
- No access to current Transaction. (Used to be part of the SqlContext, but now is missing).
In addition, the current release of the InProc Managed provider has made some interesting choices that are different from earlier version:
- SqlContext no longer gives access to the current connection, but if you create a command object and execute it, it magically is done on the current connection.
- No way to enlist a command to the current transaction.
Its going to be interesting to see where it goes from here. All of these changes are only since the February CTP. I can’t imagine it’s going to stop here…