A customer reports that after updating to Cycle 8 that SqlCommand.ExecuteReaderAsync is throwing a NotImplementedException where it did not in Cycle 7.
A bit of investigation revealed that prior to Mono 4.6.0, there was no SqlCommand.ExecuteReaderAsync (namespace System.Data.SqlClient) implementation and instead that method, with overloads, was inherited from the abstract base class DbCommand.ExecuteReaderAsync (namespace System.Data.Common) and ExecuteReaderAsync is implemented in DbCommand so prior to Mono 4.6 calling SqlCommand.ExecuteReaderAsync worked as the implementation in DbCommand was used. But in Mono 4.6 (and in the master branch) the implementations in SqlCommand.ExecuteReaderAsync hide the base implementations and the new implementation only throws a NotImplementedException.
See Mono 4.6 System.Data.SqlClient.SqlCommand.ExecuteReaderAsync:
and Mono 4.5.1 System.Data.SqlClient.SqlCommand.ExecuteReader (the Async version does not exist)
and also Mono master System.Data.Common.DbCommand.ExecuteReader:
## Steps to reproduce
I don't think this is needed, but there is a test project I can provide from the desk case if need be.
Again I don't think this is needed, but issue occurs with latest C8 and C8 SR0 builds, which include Mono 4.6.
Fixed in master and Mono 4.8
I have checked this issue with latest build of master i.e. MonoFramework-MDK-220.127.116.113.macos10.xamarin.universal_633af27d6800a6a5c050c9e4c50a0d8b67c97c20.pkg and observed that this issue still exist
Exception Error : https://gist.github.com/Mohit-Kheterpal/eac79ce416507c82376230718b8b8284
Environment info and IDE Logs : https://gist.github.com/Mohit-Kheterpal/d8dee622aa59dc9417bb2111d75159ba
Application output : https://gist.github.com/Mohit-Kheterpal/c979ed8c3866c9bc2b8da961fd2c4aa6
Hence, reopening this issue.
You tested on iOS. The fix is in the class libraries, so the version of Mono that you would need to report as having tested would be the version included _within_ Xamarin.iOS.
You tested with Xamarin.iOS 66915a0, which includes Mono 8f689a60fe814554e4958d67582ba5ec230c03f5 .
Mono 8f689a60fe814554e4958d67582ba5ec230c03f5 predates the changes mentioned in Comment 2 :
I got the expected output with Mono sample provided in comment 5 using MonoFramework-MDK-18.104.22.1683.macos10.xamarin.universal_633af27d6800a6a5c050c9e4c50a0d8b67c97c20.pkg..
Results: 232 139
Results: 233 128
Results: 234 109
Results: 235 108
Results: 236 135
Hence closing this issue by marking it as Verified.