Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Новый топик    Ответить
 NH: маппинг на результат выполнения Хранимки  [new]
netivan
Member

Откуда:
Сообщений: 8768
Добрый вечер! 1 раз столкнулся с NH, и сразу комом =(
Задача вроде тривиальная, L2Sql решает ее секунд за 10, но тут проблемы.
Есть ХР которая в конце возвращает 2 значения в selecte:
....
SELECT @SHORT_DESCRIPTION,@FULL_DESCRIPTION
RETURN 0

Делаю маппинг на класс:
<sql-query name="GET_RURU_TRANSACTION_STATUS">
  <return alias= "gs" class ="StatusDescription, Entity.Main"/>
  <![CDATA[
    exec GET_TRANSACTION_STATUS @CH_ID=:CH_ID, ....
  ]]>
  </sql-query>
Проблема в описании класса StatusDescription, ошибка что не может скомпилировать:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
  <class name="Main.StatusDescription, Entity.Main" lazy="false">
  <property name="ShortDescription" column="SHORT_DESCRIPTION"/>
  <property name="FullDescription" column="FULL_DESCRIPTION"/>
  </class>
</hibernate-mapping>
Помогите, задача вроде бы элементарная...
6 окт 11, 18:50    [11397513]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
няка
Member

Откуда: из норы
Сообщений: 493
netivan,

у вас столбцы то не именованные
она видать теряется в догадках а че её мапить

З.Ы. в NH не силен, просто предположение
6 окт 11, 20:34    [11397885]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
netivan
Member

Откуда:
Сообщений: 8768
няка,

добавил,что-то не выходит.
7 окт 11, 10:55    [11400147]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
SolYUtor
Member

Откуда:
Сообщений: 948
netivan,

покажите код вызова, сообщение об ошибке.
7 окт 11, 11:12    [11400326]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
netivan
Member

Откуда:
Сообщений: 8768
SolYUtor
netivan,

покажите код вызова, сообщение об ошибке.

да она даже не вызывается, вот в чем дело.ВИдимо на этапе инициализации маппингов ошибка выскакивает.
7 окт 11, 11:21    [11400399]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
SolYUtor
Member

Откуда:
Сообщений: 948
netivan,

так расскажите, чем nh мотивирует свой отказ. Лениво же телепатией заниматься.
7 окт 11, 11:29    [11400481]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
netivan
Member

Откуда:
Сообщений: 8768
SolYUtor
netivan,

так расскажите, чем nh мотивирует свой отказ. Лениво же телепатией заниматься.

вот изменил код. вот маппинг вызова процедуры(полный код):
<sql-query name="GET_RURU_TRANSACTION_STATUS" callable="true">
    <return alias= "gs" class ="JV.Entity.Main.TransactionRuRuStatusDescription, JV.Entity.Main">
      <return-property name="ShortDesription" column="SHORT_DESCRIPTION"/>
      <return-property name="FullDesription" column="FULL_DESCRIPTION"/>
    </return>
  <![CDATA[
    exec GET_RURU_TRANSACTION_STATUS @CH_ID=:CH_ID, @SM_ID=:SM_ID, @SP_ID=:SP_ID, @LS_ID=:LS_ID, @LS_ID_ERR=:LS_ID_ERR, @ERR_CODE=:ERR_CODE, @SM_STATUS=:SM_STATUS, @ST_STATUS=:ST_STATUS, @ST_ERR=:ST_ERR, @SM_ERR=:SM_ERR, @JV_RR_ERR=:JV_RR_ERR, @WORKFLOW_ID=:WORKFLOW_ID
  ]]>
  </sql-query>
Теперь пишет:
"Errors in named queries: {GET_RURU_TRANSACTION_STATUS}".
И главный вопрос - как мне сделать маппинг файла JV.Entity.Main.TransactionRuRuStatusDescription? У меня ведь просто 2 параметра, никакого ИД нет..
7 окт 11, 11:31    [11400505]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
SolYUtor
Member

Откуда:
Сообщений: 948
netivan,

уберите CDATA. Он нигде в документации не фигурирует. Про файл и параметры не понял вопроса.
7 окт 11, 11:37    [11400582]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
netivan
Member

Откуда:
Сообщений: 8768
SolYUtor
netivan,

уберите CDATA. Он нигде в документации не фигурирует. Про файл и параметры не понял вопроса.
CDATA не помогло. ПРо файл, у меня указано в возврате тип: class ="JV.Entity.Main.TransactionRuRuStatusDescription. Вот какой должен быть файл маппинг для него?
7 окт 11, 11:53    [11400809]     Ответить | Цитировать Сообщить модератору
 Re: NH: маппинг на результат выполнения Хранимки  [new]
netivan
Member

Откуда:
Сообщений: 8768
netivan,

вообщем решил. Проблема была в том, что НХ сериализовал структуру а я ее не удалял, это раз. И два - вот полезный пример http://stackoverflow.com/questions/3512272/correct-nhibernate-mapping-for-stored-procedure
7 окт 11, 13:37    [11401827]     Ответить | Цитировать Сообщить модератору
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Ответить