Pound signs not handled correctly when used in combination with $Foo$ syntax
and dynamic sql.
---------------------------------------------------------------------------------------------
Key: IBATISNET-29
URL: http://issues.apache.org/jira/browse/IBATISNET-29
Project: iBatis for .NET
Type: Bug
Versions: DataMapper 1.1
Environment: IBatisNet.DataMapper
[assembly: AssemblyVersion("1.1.458")]
Reporter: Ron Grabowski
When the following syntax is used:
##$Foo$##
and Foo is set via:
map["Foo"] = new DateTime(2005, 1, 2, 3, 4, 5);
Ibatis seems to process the line correctly. I expect the following text to be
sent to the database:
#1/2/2005 3:04:05#
The logs don't explicitly state that that text is being sent to the database
but the code seems to work correctly.
When a dynamic sql block is used with the ##$Foo$## syntax, Ibatis incorrectly
throws a ProbeException because it tries to re-evaluate "1/2/2005 3:04:05" as a
key in the Hashtable. For example this snippet of text:
(Concert.ConcertDate = ##$StartDate$##)
<isNotEmpty prepend="AND" property="EndDate">
(Concert.ConcertDate = ##$EndDate$##)
</isNotEmpty>
Raises a ProbeException with the following error message: There is no Get
property named '1/2/2005 3' in class 'Hashtable'. The next character after the
3 is a colon which Ibatis uses for inline parameters. It appears that Ibatis is
trying to re-evaluate what's between the dollar signs.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira