#c# #data-structures
#c# #структуры данных
Вопрос:
Я разрабатываю службу интеграции, предоставляющую для некоторых веб-приложений некоторую функциональность и сервисы.
Одним из таких сервисов является выполнение пользовательских запросов к определенной базе данных.
Существуют следующие методы: ( ExecuteScaler
, ExecuteNonQuery
, ExecuteTable
).
Я уже реализовал первые два. Итак, что вы предлагаете в отношении возвращаемого типа ExecuteTable
?
Мне нужна простая структура данных, демонстрирующая таблицу. Я подумал о DataTable
, у вас есть какие-либо другие предложения?
Мы будем признательны за любое предложение.
Заранее спасибо.
Ответ №1:
Если табличные данные произвольны и их необходимо обрабатывать в памяти, то вы также можете выбрать DataTable
— это избавит вас от множества поисков ошибок.
Если данные не нужно буферизировать в памяти, я бы использовал IDataReader
и позволил потребителю извлекать данные самостоятельно.
Я должен подчеркнуть, что DataTable
это никогда не было моим первым выбором API, но здесь это может быть прагматично.
Еще одним вариантом является универсальный метод, ExecuteQuery<T>(..)
который заполняет данные в T
экземпляры, возможно, usig что-то вроде dapper-dot-net.