A while ago, we, the core ADO.NET team, sent out a survey in order to gather your feedback about some suggestions and future ideas for our products. Now, it’s more than time to share the results with you.

We had a total of 559 respondents, most from Europe and USA, representing mostly software manufacturers, financial services, healthcare and consulting companies.

survey1 survey2

In terms of performance, most of the respondents feel good about SqlClient. Now, Managed ODBC and Managed OLEDB are considered to have, on average, fair performance. The table below illustrates the results:

Good

Fair

Bad

I don’t know

SqlClient

89%

5.3%

0.2%

5.5%

Managed ODBC

24.4%

22.2%

7.1%

46.4%

Managed OleDb

34.4%

20.5%

3.4%

41.6%

As mentioned above, the survey exposed some suggestions and ideas that also came from you through our Connect Web Site (http://connect.microsoft.com), forums and BLOG. These are the most important tools for us to interact with you. Also, by publishing them in the survey, we could better understand how important they are to a broader audience.

Below you can find them ranked, from the most to the least voted.

Improve command batching by introducing a way to group parameterized DbCommands in order and send them to the server in just one operation

Asynchronous data reader

Uniform schema discovery API across all managed providers

Uniform bulk copy API across all managed providers and improved overall experience

Streamed input support in DbParameter class for large BLOBs. Currently, BLOBs must be fully loaded into memory before being sent to the server

Asynchronous connection creation

Set credentials outside of the connection string

Improved overall SqlDependency/Notifications experience

Improve the granularity of how the connection string is used to map logical-to-physical connections in the Connection Pool (CP). Currently, the CP takes all characters into consideration in order to evaluate a connection string, opening more connections than needed

Cross AppDomain connection pooling

Support for “TableDirect” CommandType in SqlCommand

Server side cursor support in ADO.NET

Specify a SSPI Encryption in the connection string

Specify Kerberos Authentication in the connection string

Create MDB files programmatically

Specify a SPN in the connection string

In conclusion, we thank you for your suggestion and interest in answering this survey and we will consider your input in our future releases. This type of interaction is very important to us because gives us the confidence we need to move forward.

Thanks,

Luiz Fernando Santos

ADO.NET PM