user204588
user204588

Reputation: 1633

Trim string NHIBERNATE

Can't believe I've found no answer to this but how can you do a query like

SELECT LTRIM(RTRIM("ColumnName")) FROM ....

in NHibernate

thanks

Upvotes: 4

Views: 2503

Answers (1)

Radim Köhler
Radim Köhler

Reputation: 123861

Having an example of Bank as POCO:

public class Bank
{
  public virtual int    ID { get; set; }
  public virtual string City { get; set; }
  public virtual string Street { get; set; }
}

There is a syntax for the LTRIM(RTRIM...

Bank bank = null;
var session = ...;
var query = session.QueryOver<BankAddress>()
  .SelectList(l => l

    // properties ID, City
    .Select(c => c.ID).WithAlias(() => bank.ID)
    .Select(c => c.City).WithAlias(() => bank.City)  

    // projection Street 
    .Select(Projections.SqlProjection(               
        " LTRIM(RTRIM({alias}.Street)) as Street"  // applying LTRIM(RTRIM
        , new string[] { "Street" }
        , new IType[] { NHibernate.NHibernateUtil.String }
  ))
  .TransformUsing(Transformers.AliasToBean<Bank>())
  ;

var list = query.List<Bank>();

Upvotes: 4

Related Questions