From: Richard B. (JIRA) <nh...@gm...> - 2011-05-22 10:22:44
|
[ http://216.121.112.228/browse/NH-2683?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21144#action_21144 ] Richard Brown commented on NH-2683: ----------------------------------- Thanks vahid. The new patch looks good. And I like renaming the Year() extension to YearPart() (makes it clearer it's an NH customisation). Cheers. > Add common dialect functions as extension methods for QueryOver > --------------------------------------------------------------- > > Key: NH-2683 > URL: http://216.121.112.228/browse/NH-2683 > Project: NHibernate > Issue Type: Improvement > Components: QueryOver > Affects Versions: 3.2.0Alpha2 > Reporter: Richard Brown > Assignee: Richard Brown > Priority: Minor > Attachments: ProjectionsExtensions.zip, QueryOverSqlFuncsExts.zip > > > Some of the common functions (that are registered in most, if not all Dialects) can be used in ICriteria using SQL-projections. > Extensions methods can be added for these to allow queries along the lines of: > s.QueryOver<Person>() > .Where(p => p.BirthDate.Year() == 1970) > .List() > ... which can be translated to: > .Where(Restrictions.Eq(Projections.SqlFunction("year", NHibernateUtil.DateTime, Projections.Property<Person>(p => p.BirthDate)), 1970)) > ... and in turn to: > datepart(year, this_.BirthDate) = @p0; -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |