I mean create a IUserType to handle NodaTime and register it in mapping.

Regards,
Alex


2013/5/29 Diego Mijelshon <[email protected]>

> Register where, Alex?
>
>
> On Tue, May 28, 2013 at 7:31 PM, Alexander I. Zaytsev <[email protected]>wrote:
>
>> Hi Diego,
>>
>> Probably you need to register usertype for nodatime.
>>
>> Regards,
>> Alex
>>
>>
>> 2013/5/29 Diego Mijelshon <[email protected]>
>>
>>> session.Query<Foo>().Max(x => x.Date);
>>>
>>> This is the full code of the method I did not commit in LocalDateFixture:
>>>
>>>
>>>         [Test]
>>>         public void ValuesCanBeRetrievedFromLinqQueries()
>>>         {
>>>             object id;
>>>             using (var session = sessionFactory.OpenSession())
>>>             using (var tx = session.BeginTransaction())
>>>             {
>>>                 id = session.Save(new Foo { Date = someDate });
>>>                 tx.Commit();
>>>             }
>>>             using (var session = sessionFactory.OpenSession())
>>>             using (var tx = session.BeginTransaction())
>>>             {
>>>                 var maxDate = session.Query<Foo>().Max(x => x.Date);
>>>                 Assert.AreEqual(someDate, maxDate);
>>>             }
>>>         }
>>>
>>>
>>> Thanks
>>> Diego
>>>
>>>
>>> On Mon, May 27, 2013 at 11:13 PM, Alexander I. Zaytsev <[email protected]
>>> > wrote:
>>>
>>>> Hi Diego,
>>>>
>>>> Can you please provide a query?
>>>>
>>>> Regards,
>>>> Alexander
>>>>
>>>>
>>>> 2013/5/28 Diego Mijelshon <[email protected]>
>>>>
>>>>>  Hi guys.
>>>>>
>>>>> I'm trying to implement some NodaTime mapping support for NH.
>>>>> This is in a proof-of-concept state now, but there's already a Nuget
>>>>> package, NHibernate.NodaTime. You can check it out.
>>>>> Here's one of the first roadblocks I've found: when trying to query
>>>>> using LINQ aggregate methods, I run into the following exception:
>>>>>
>>>>> System.NotSupportedException : Don't currently support idents of type
>>>>> LocalDate
>>>>>    at NHibernate.Hql.Ast.HqlIdent..ctor(IASTFactory factory, Type type)
>>>>>    at NHibernate.Hql.Ast.HqlCast..ctor(IASTFactory factory,
>>>>> HqlExpression expression, Type type)
>>>>>    at NHibernate.Hql.Ast.HqlTreeBuilder.Cast(HqlExpression expression,
>>>>> Type type)
>>>>>    at
>>>>> NHibernate.Linq.Visitors.HqlGeneratorExpressionTreeVisitor.VisitNhMax(NhMaxExpression
>>>>> expression)
>>>>>    at
>>>>> NHibernate.Linq.Visitors.HqlGeneratorExpressionTreeVisitor.VisitExpression(Expression
>>>>> expression)
>>>>>    at
>>>>> NHibernate.Linq.Visitors.HqlGeneratorExpressionTreeVisitor.Visit(Expression
>>>>> expression)
>>>>>    at
>>>>> NHibernate.Linq.Visitors.SelectClauseVisitor.VisitExpression(Expression
>>>>> expression)
>>>>>    at NHibernate.Linq.Visitors.SelectClauseVisitor.Visit(Expression
>>>>> expression)
>>>>>    at
>>>>> NHibernate.Linq.Visitors.QueryModelVisitor.VisitSelectClause(SelectClause
>>>>> selectClause, QueryModel queryModel)
>>>>>    at Remotion.Linq.Clauses.SelectClause.Accept(IQueryModelVisitor
>>>>> visitor, QueryModel queryModel)
>>>>>    at Remotion.Linq.QueryModelVisitorBase.VisitQueryModel(QueryModel
>>>>> queryModel)
>>>>>    at NHibernate.Linq.Visitors.QueryModelVisitor.Visit()
>>>>>    at
>>>>> NHibernate.Linq.Visitors.QueryModelVisitor.GenerateHqlQuery(QueryModel
>>>>> queryModel, VisitorParameters parameters, Boolean root)
>>>>>    at
>>>>> NHibernate.Linq.NhLinqExpression.Translate(ISessionFactoryImplementor
>>>>> sessionFactory)
>>>>>    at
>>>>> NHibernate.Hql.Ast.ANTLR.ASTQueryTranslatorFactory.CreateQueryTranslators(String
>>>>> queryIdentifier, IQueryExpression queryExpression, String collectionRole,
>>>>> Boolean shallow, IDictionary`2 filters, ISessionFactoryImplementor 
>>>>> factory)
>>>>>    at
>>>>> NHibernate.Engine.Query.HQLExpressionQueryPlan.CreateTranslators(String
>>>>> expressionStr, IQueryExpression queryExpression, String collectionRole,
>>>>> Boolean shallow, IDictionary`2 enabledFilters, ISessionFactoryImplementor
>>>>> factory)
>>>>>    at NHibernate.Engine.Query.HQLExpressionQueryPlan..ctor(String
>>>>> expressionStr, IQueryExpression queryExpression, String collectionRole,
>>>>> Boolean shallow, IDictionary`2 enabledFilters, ISessionFactoryImplementor
>>>>> factory)
>>>>>    at NHibernate.Engine.Query.HQLExpressionQueryPlan..ctor(String
>>>>> expressionStr, IQueryExpression queryExpression, Boolean shallow,
>>>>> IDictionary`2 enabledFilters, ISessionFactoryImplementor factory)
>>>>>    at
>>>>> NHibernate.Engine.Query.QueryPlanCache.GetHQLQueryPlan(IQueryExpression
>>>>> queryExpression, Boolean shallow, IDictionary`2 enabledFilters)
>>>>>    at
>>>>> NHibernate.Impl.AbstractSessionImpl.GetHQLQueryPlan(IQueryExpression
>>>>> queryExpression, Boolean shallow)
>>>>>    at NHibernate.Impl.AbstractSessionImpl.CreateQuery(IQueryExpression
>>>>> queryExpression)
>>>>>    at NHibernate.Linq.DefaultQueryProvider.PrepareQuery(Expression
>>>>> expression, ref IQuery query, ref NhLinqExpression nhQuery)
>>>>>    at NHibernate.Linq.DefaultQueryProvider.Execute(Expression
>>>>> expression)
>>>>>    at NHibernate.Linq.DefaultQueryProvider.Execute(Expression
>>>>> expression)
>>>>>    at System.Linq.Queryable.Max(IQueryable`1 source, Expression`1
>>>>> selector)
>>>>>    at [my code]
>>>>>
>>>>> It looks like the Hql Ast generation fails for anything that is not a
>>>>> native type.
>>>>> Is there a workaround from the Linq side (generators) or do I have to
>>>>> patch the core?
>>>>>
>>>>> Thanks!
>>>>> Diego
>>>>>
>>>>> --
>>>>>
>>>>> ---
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "nhibernate-development" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>
>>>>>
>>>>>
>>>>
>>>>  --
>>>>
>>>> ---
>>>> You received this message because you are subscribed to the Google
>>>> Groups "nhibernate-development" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>>
>>>>
>>>
>>>  --
>>>
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "nhibernate-development" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>>
>>>
>>
>>  --
>>
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "nhibernate-development" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>>
>
>  --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "nhibernate-development" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"nhibernate-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to