Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> функция FindOne, NHibernate 
:(
    Опции темы
Martin_8
Дата 18.7.2010, 00:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 16.10.2006
Где: Минск

Репутация: нет
Всего: нет



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

public virtual  Category GetCategoryBySku(string sku)
        {
            ICriterion criterion = Restrictions.Eq(Reflector.GetPropertyName<Category>(x => x.Sku), sku);
            var a = FindOne(criterion);         // Ошибка здесь, в "a" ничего не заносится, хотя в criterion данные есть
            return a;
           //return this.FindOne(criterion);   // Ошибка здесь, ничего не возвращается, хотя в criterion данные есть 
        }


А вот, что я вижу при отладке

user posted image

Подскажите, как должен выглядеть код, чтобы метод возвращал значение.
PM   Вверх
fvoice
Дата 19.7.2010, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 28.4.2009

Репутация: нет
Всего: нет



судя по описанию, в наборе данных нет объекта Category у которого поле Sku равно параметру sku("22")

Вы наверное используете Rhino Mocking NHibernate?
я в нем не силен, возможно здесь вы найдете описние интерисующей функции How to Mock the FindOne(ICriterion[])

учитывая описание FindOne:
"The FindOne repository method builds a NHibernate Criteria and calls its UniqueResult method."
в стандартном хибернейте можно сделать так:
Код

ICriteria firstObject = session.CreateCriteria(typeof(T));

//добавляем какие то условия

T result = firstObject.UniqueResult<T>();

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0598 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.