Выберите константу/значение в icriteria

#c# #nhibernate #icriteria

Вопрос:

На основе параметра я хотел бы выбрать постоянное значение в поле, используя NHibernate ICriteria

Желаемый sql может быть таким

 SELECT ID, 'ConstantTile' Title  FROM Table
 

Единственный способ увидеть, как это делается, — это использовать проекции.Условное, которое всегда возвращает значение true, но должен быть более разумный способ

Мой код для возврата строки таков:

  public static IProjection GetBoolResult(string desiredResult)
 {
      return Projections.Conditional(Restrictions.Ge("ID",0),
            Projections.Constant(desiredResult, NHibernateUtil.String),
            Projections.Constant("", NHibernateUtil.String));
  }
 

Ответ №1:

Проекции.Псевдоним и проекции.Константа дала желаемый результат

     public static IProjection GetStringResult(string result,string alias)
    {
        return Projections.Alias(Projections.Constant(result, NHibernateUtil.String), alias);
    }