Термин отключен изображен более архитектурный узор. Если вы переходите к деталям реализации, все выглядит/подключается.
Термин «отключенный» используется для передачи его свойства конструкции, что ему не требуется подключение к базе данных в реальном времени. Вы заполняете свой набор данных, вносите в него изменения, сохраняете набор данных на диск, останавливаете приложение, через день запускаете приложение, читаете набор данных с диска и записываете сделанные вчера изменения в хранилище данных с помощью http://msdn.microsoft.com/en-us/library/system.data.common.dbdataadapter(v=vs.110).aspx.
С отличным Джоном Паппа this excerpt from his msdn article series Data Points
Вашей ситуации в будет диктовать, когда и где вы будете использовать DataSet по сравнению с DataReader. Например, отключенный характер DataSet позволяет преобразовать его в XML и отправить по сети через HTTP, если это необходимо. Это делает его идеальным в качестве возвращаемого транспортного средства из объектов бизнес-уровня и веб-сервисов. DataReader не может быть сериализован и, следовательно, не может быть передан между границами физического уровня, где могут быть только строковые (XML) данные.
Хотя он выглядит «подключенным» к вашей базе данных, я могу немного расширить ваш пример, чтобы пояснить, что «подключено» относительно. Лучше говорить о зависимости, и DataSet зависит только от DataAdapter.
StorageEnum store = Storage.Oracle;
string stUpdate= "update customer set name = 'Faizan' where ID = 5";
DbDataAdapter da = null;
swith (store)
{
case StorageEnum.SqlServer:
da= new SQLDataAdapter(stUpdate, SQLCONNECTIONOBJECT)
break;
case StorageEnum.Oracle:
da= new OracleDataAdapter(stUpdate, ORACLECONNECTIONOBJECT)
break;
default:
da= new OleDBDataAdapter(stUpdate, OLEDBCONNECTIONOBJECT)
break;
};
DataSet ds = new Dataset();
da.Fill(ds, "tablename")
Как вы можете видеть только изменения, необходимые для поддержки нескольких баз данных для обновления/Вставить/Удалить и выберите только необходимые изменения используемого DataAdapter.