|
From: <pa...@us...> - 2011-03-28 02:33:01
|
Revision: 5557
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5557&view=rev
Author: patearl
Date: 2011-03-28 02:32:55 +0000 (Mon, 28 Mar 2011)
Log Message:
-----------
Linq: Use "concat" method for string addition.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate/Linq/Visitors/HqlGeneratorExpressionTreeVisitor.cs
Modified: trunk/nhibernate/src/NHibernate/Linq/Visitors/HqlGeneratorExpressionTreeVisitor.cs
===================================================================
--- trunk/nhibernate/src/NHibernate/Linq/Visitors/HqlGeneratorExpressionTreeVisitor.cs 2011-03-28 01:28:41 UTC (rev 5556)
+++ trunk/nhibernate/src/NHibernate/Linq/Visitors/HqlGeneratorExpressionTreeVisitor.cs 2011-03-28 02:32:55 UTC (rev 5557)
@@ -293,7 +293,14 @@
return _hqlTreeBuilder.BooleanOr(lhs.AsBooleanExpression(), rhs.AsBooleanExpression());
case ExpressionType.Add:
- return _hqlTreeBuilder.Add(lhs, rhs);
+ if (expression.Left.Type == typeof(string) && expression.Right.Type == typeof(string))
+ {
+ return _hqlTreeBuilder.MethodCall("concat", lhs, rhs);
+ }
+ else
+ {
+ return _hqlTreeBuilder.Add(lhs, rhs);
+ }
case ExpressionType.Subtract:
return _hqlTreeBuilder.Subtract(lhs, rhs);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|