77
88namespace NHibernate . Linq . Functions
99{
10- public class DateTimePropertiesHqlGenerator : IHqlGeneratorForProperty
10+ public class DateTimePropertiesHqlGenerator : BaseHqlGeneratorForProperty
1111 {
12- private readonly MemberInfo [ ] supportedProperties ;
13-
1412 public DateTimePropertiesHqlGenerator ( )
1513 {
16- supportedProperties = new [ ]
17- {
18- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Year ) ,
19- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Month ) ,
20- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Day ) ,
21- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Hour ) ,
22- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Minute ) ,
23- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Second ) ,
24- ReflectionHelper . GetProperty ( ( DateTime x ) => x . Date ) ,
25- } ;
26- }
27-
28- public IEnumerable < MemberInfo > SupportedProperties
29- {
30- get
31- {
32- return supportedProperties ;
33- }
14+ SupportedProperties = new [ ]
15+ {
16+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Year ) ,
17+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Month ) ,
18+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Day ) ,
19+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Hour ) ,
20+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Minute ) ,
21+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Second ) ,
22+ ReflectionHelper . GetProperty ( ( DateTime x ) => x . Date ) ,
23+
24+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Year ) ,
25+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Month ) ,
26+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Day ) ,
27+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Hour ) ,
28+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Minute ) ,
29+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Second ) ,
30+ ReflectionHelper . GetProperty ( ( DateTimeOffset x ) => x . Date ) ,
31+ } ;
3432 }
3533
36- public virtual HqlTreeNode BuildHql ( MemberInfo member , Expression expression , HqlTreeBuilder treeBuilder , IHqlExpressionVisitor visitor )
34+ public override HqlTreeNode BuildHql ( MemberInfo member , Expression expression , HqlTreeBuilder treeBuilder , IHqlExpressionVisitor visitor )
3735 {
3836 return treeBuilder . MethodCall ( member . Name . ToLowerInvariant ( ) ,
39- visitor . Visit ( expression ) . AsExpression ( ) ) ;
37+ visitor . Visit ( expression ) . AsExpression ( ) ) ;
4038 }
4139 }
4240}
0 commit comments