Помогите с запросом Nhibernate? - PullRequest
0 голосов
/ 21 марта 2011

Пожалуйста, кто-нибудь может мне помочь изменить приведенный ниже запрос T-SQL на запрос NHibernate:

Select * From **TableName** Order By Convert(int,**VarcharColumnNameContainsOnlyNumbers**) Desc

Обратите внимание, что когда я использовал следующий запрос, я получил неверно упорядоченные данные:

mySession.CreateCriteria<**EntityName**>()
            .AddOrder(new Order("**VarcharColumnNameContainsOnlyNumbers**", false))
            .List<**EntityName**>();

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 21 марта 2011

Вы можете использовать проекции в вашем заказе

.AddOrder(Order.Desc(Projections.Cast(NHibernateUtil.Int32,
      Projections.Property("VarCharColumnName")))
0 голосов
/ 21 марта 2011

Я использовал приведенный ниже код, и он решен:)

mySession.CreateSQLQuery("Select * From **TableName** Order By Convert(int,**VarcharColumnNameContainsOnlyNumbers**) Desc").SetMaxResults(1).UniqueResult<string>();

Спасибо всем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...