Получение объектов из реляционной таблицы с помощью процедуры Oracle pl / sql - PullRequest
0 голосов
/ 30 июня 2010

Я хочу получить строки из таблицы оракулов и преобразовать их в объекты.

В настоящее время я использую результат refcursor и средство чтения данных в c #, чтобы вручную преобразовать строки в объекты, но это кажется грязным.Являются ли они лучшим способом преобразования строк из реляционной таблицы в объекты?

РЕДАКТИРОВАТЬ: В проекте, в котором я работаю, не используются никакие инструменты ORM, поэтому, к сожалению, мэппингу не по плечу!1005 *

Ответы [ 2 ]

1 голос
/ 30 июня 2010

Вы можете использовать UDT и использовать новые функции ODP для получения данных.

это пошаговое руководство по началу работы: http://www.oracle.com/technology/obe/hol08/dotnet/udt/udt_otn.htm

, хотя это немного более подробно: http://download.oracle.com/docs/html/E10927_01/featUDTs.htm

но настоящее мясо и картофель уже установлены наваш компьютер после установки ODP в каталоге Samples:% ORA_HOME% \ product \ 11.1.0 \ client_1 \ odp.net \ samples \ 2.x \ UDT

Использование UDT помогло нам создать и времяОтвет отличный.

0 голосов
/ 30 июня 2010

Вы можете использовать ORM, например NHibernate , Fluent NHibernate , Linq To Sql или Entity Framework. ORM (Object RelationalMappers) существуют, чтобы превратить таблицы данных в объекты.Вы указываете, какая таблица указывает на какой класс, какие столбцы указывают на какие элементы, и ORM будет преобразовывать строки в объекты.Он также позаботится о ваших обычных операциях CRUD, поэтому, как только вы отобразите таблицы, вы сможете начать с ними взаимодействовать.

Редактировать : Если вы используете .Net 3.5 или более позднюю версию,вы получаете Linq To Sql и Entity Framework (они включены в .Net).Если вы не можете использовать ORM, вы застряли, делая кастинг самостоятельно (по сути, вы в этом случае ORM)

...