NHibernate Projections.Приведение к пользовательскому типуC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 NHibernate Projections.Приведение к пользовательскому типу

Сообщение Anonymous »

Мой столбец количества имеет целое число. Я хочу использовать для него Like, а затем пытаюсь преобразовать его тип в строку.
Для этого я использую:

Код: Выделить всё

 Expression.Like(
Projections.Cast( NHibernateUtil.String,
Projections.Property(x => x.Quantity)),
searchValue, MatchMode.Anywhere)
Это почти работает. Он генерирует sql вот так.

Код: Выделить всё

 cast( this_.ILOSC as NVARCHAR2(255)) like :p1
Проблема здесь: N[/b]VARCHAR. Вместо этого мне нужно получить VARCHAR.

Как я могу это получить?

Код: Выделить всё

cast( this_.ILOSC as VARCHAR2(255)) like :p1
Второй вопрос, который может помочь:
Если у меня есть такое сопоставление:

< р>

Код: Выделить всё

Map(x => x.Quantity)
.Column("ILOSC")
Вот почему я использую лямбда-выражение для работы с этим столбцом.
Можно ли получить имя сопоставленного столбца?

Код: Выделить всё

var colName = //some action to return "ILOSC"

Код: Выделить всё

Projections.Property(x => x.Quantity)
дает мне «Количество». Как я могу получить «ILOSC»?

Если я получу это имя столбца, я смогу использовать Expression.Sql().

Подробнее здесь: https://stackoverflow.com/questions/249 ... ustom-type
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»