From: <fab...@us...> - 2010-12-12 12:47:06
|
Revision: 5308 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5308&view=rev Author: fabiomaulo Date: 2010-12-12 12:47:00 +0000 (Sun, 12 Dec 2010) Log Message: ----------- First step to fix NH-2211 Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Engine/ISessionImplementor.cs trunk/nhibernate/src/NHibernate/ISession.cs trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs trunk/nhibernate/src/NHibernate/Linq/NhQueryProvider.cs trunk/nhibernate/src/NHibernate/Linq/NhQueryable.cs Modified: trunk/nhibernate/src/NHibernate/Engine/ISessionImplementor.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Engine/ISessionImplementor.cs 2010-12-11 18:39:48 UTC (rev 5307) +++ trunk/nhibernate/src/NHibernate/Engine/ISessionImplementor.cs 2010-12-12 12:47:00 UTC (rev 5308) @@ -89,6 +89,13 @@ /// <returns></returns> IList List(IQueryExpression queryExpression, QueryParameters parameters); + /// <summary> + /// Create a new instance of <c>Query</c> for the given query expression + /// <param name="queryExpression">A hibernate query expression</param> + /// <returns>The query</returns> + /// </summary> + IQuery CreateQuery(IQueryExpression queryExpression); + void List(string query, QueryParameters parameters, IList results); /// <summary> Modified: trunk/nhibernate/src/NHibernate/ISession.cs =================================================================== --- trunk/nhibernate/src/NHibernate/ISession.cs 2010-12-11 18:39:48 UTC (rev 5307) +++ trunk/nhibernate/src/NHibernate/ISession.cs 2010-12-12 12:47:00 UTC (rev 5308) @@ -663,13 +663,6 @@ /// <param name="queryString">A hibernate query string</param> /// <returns>The query</returns> IQuery CreateQuery(string queryString); - - /// <summary> - /// Create a new instance of <c>Query</c> for the given query expression - /// <param name="queryExpression">A hibernate query expression</param> - /// <returns>The query</returns> - /// </summary> - IQuery CreateQuery(IQueryExpression queryExpression); /// <summary> /// Create a new instance of <c>Query</c> for the given collection and filter string Modified: trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs 2010-12-11 18:39:48 UTC (rev 5307) +++ trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs 2010-12-12 12:47:00 UTC (rev 5308) @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; +using NHibernate.Engine; using NHibernate.Impl; namespace NHibernate.Linq @@ -10,7 +11,7 @@ { public static IQueryable<T> Query<T>(this ISession session) { - return new NhQueryable<T>(session); + return new NhQueryable<T>(session as ISessionImplementor); } public static IQueryable<T> Cacheable<T>(this IQueryable<T> query) Modified: trunk/nhibernate/src/NHibernate/Linq/NhQueryProvider.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Linq/NhQueryProvider.cs 2010-12-11 18:39:48 UTC (rev 5307) +++ trunk/nhibernate/src/NHibernate/Linq/NhQueryProvider.cs 2010-12-12 12:47:00 UTC (rev 5308) @@ -4,6 +4,7 @@ using System.Linq; using System.Linq.Expressions; using System.Reflection; +using NHibernate.Engine; using NHibernate.Impl; using NHibernate.Type; @@ -11,9 +12,9 @@ { public class NhQueryProvider : IQueryProvider { - private readonly ISession _session; + private readonly ISessionImplementor _session; - public NhQueryProvider(ISession session) + public NhQueryProvider(ISessionImplementor session) { _session = session; } Modified: trunk/nhibernate/src/NHibernate/Linq/NhQueryable.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Linq/NhQueryable.cs 2010-12-11 18:39:48 UTC (rev 5307) +++ trunk/nhibernate/src/NHibernate/Linq/NhQueryable.cs 2010-12-12 12:47:00 UTC (rev 5308) @@ -1,5 +1,6 @@ using System.Linq; using System.Linq.Expressions; +using NHibernate.Engine; using Remotion.Data.Linq; namespace NHibernate.Linq @@ -10,7 +11,7 @@ public class NhQueryable<T> : QueryableBase<T> { // This constructor is called by our users, create a new IQueryExecutor. - public NhQueryable(ISession session) + public NhQueryable(ISessionImplementor session) : base(new NhQueryProvider(session)) { } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |