Отображение в словарь с iBATIS - PullRequest
       14

Отображение в словарь с iBATIS

0 голосов
/ 22 сентября 2008

Учитывая простое утверждение, такое как:

<statement id="SelectProducts" resultMap="???">
  SELECT * FROM Products
</statement>

Можно ли получить список объектов словаря, ключами которых являются имена столбцов? то есть.

var list = Mapper.QueryForList<IDictionary<string,string>>("SelectProducts", null);

IDictionary<string, string> dict = list[0];
// dict["id"] == "1"
// dict["name"] == "Some Product Name"
// dict["price"] == "$9.99"
// etc.

Я хотел бы обобщить результат запроса для обработки любого количества столбцов / имен столбцов без привязки к конкретным свойствам какого-либо класса.

Я понимаю, что приведенный здесь пример потерпит неудачу, поскольку результирующий набор может иметь повторяющиеся (или нулевые) имена столбцов Я подумал о классе результата, который содержит индексированный список пар ключ-значение. Ключевым моментом здесь является сохранение информации о столбцах где-либо.

1 Ответ

1 голос
/ 22 сентября 2008

Вы можете сделать это, установив атрибут класса в HashTable в конфигурации resultMap. Более подробная информация доступна здесь .

...