Господа, а никто не знает, каким образом можно работать с сабжем?
Дело в том, что у нас в C# компилируется некоторый legacy софт, (в т.ч. черпающий корни в коболе), в котором на серверные курсоры БД довольно жестко завязана логика, так что мнение MS по поводу концептуального преимущества оффлайн датасетов, к сожалению, здесь не роли играет.
В JDBC ResultSet позволял писать в серверный курсор, в ADO.NET — никак. Удивительно, как MS решились настолько нарушить обратную совместимость — все (в т.ч. и они сами) всю жизнь это поддерживали.
Есть три слегка работающих недо-варианта, как то:
1. Юзать обычное комовское ADO. Довольно обидно + всякие глюки с типами при приведении COM<->.NET возникают, вообще впечатление сильно ниже среднего.
2. Юзать из C# J#-ный JDBC. Не понятно, насколько долго и хорошо MS его будут поддерживать + нормально через него доступен только ODBC (и на том спасибо, т.к. это самый портабельный стандарт, но тормозной).
3. Под конкретные драйвера писать свои надстройки. Я, например, знаю, что через нестандартные API MSSQL 2005 и DB2 8+ можно работать с нормальными серверными курсорами. Про оракл не скажу, но тоже надеюсь. Но это геморрой + снижение портабельности.
От присутствующих здесь я очень хочу услышать:
1. В чем я неправ выше.
2. Как можно все-таки сделать то, о чем я писал.
3. Факультативно

— почему в ADO .NET нельзя IDbConnection сразу создать по строке, а обязательно надо в итоге писать конкретный класс типа new SqlConnection(...). Это напрочь не относится к делу, но все равно интересно

.
Заранее большое спасибо,
с уважением,
Д. Луцив.