I stepped through it and determined it was due to mixing both the #Var# and
$Var$ syntax. In that example, iBatis replaces the #Id# with a question
mark, and then later wants to replace the question mark with a DbParameter,
but since $Sets$ also inserted a question mark things start breaking down.
You can get around this by strictly using the $Var$ syntax. I have no idea
if this is a priority for being fixed.
collinp10 wrote:
>
> Has this issue ever been resolved? I'm running into this problem as well.
>
> Thanks for your response,
>
> Collin
>
>
> Tinister wrote:
>>
>> Thanks for your reply. Here's an example where I am getting an exception
>> thrown. I'm using version 1.6.1 of the DataMapper.
>>
>> <update id="DynamicUpdate" parameterClass="Hashtable">
>> update TestDB.dbo.Main set $Sets$ where [ID] = #Id#
>> </update>
>>
>> public static void DoDynamicUpdate()
>> {
>> Hashtable param = new Hashtable();
>> param.Add("Sets", "[Data]=N'Fo?o'");
>> param.Add("Id", 1);
>>
>> Mapper.Update( "DynamicUpdate", param );
>> }
>>
>> The exception is
>>
>> System.ArgumentOutOfRangeException: Specified argument was out of the
>> range of valid values.
>> Parameter name: index
>> at
>> IBatisNet.DataMapper.Configuration.ParameterMapping.ParameterPropertyCollection.get_Item(Int32
>> index)
>> at
>> IBatisNet.DataMapper.Configuration.Statements.PreparedStatementFactory.EvaluateParameterMap()
>> at
>> IBatisNet.DataMapper.Configuration.Statements.PreparedStatementFactory.Prepare()
>> at
>> IBatisNet.DataMapper.Configuration.Sql.SimpleDynamic.SimpleDynamicSql.BuildPreparedStatement(ISqlMapSessionsession,
>> RequestScope request, String sqlStatement)
>> at
>> IBatisNet.DataMapper.Configuration.Sql.SimpleDynamic.SimpleDynamicSql.GetRequestScope(IMappedStatementmappedStatement,
>> Object parameterObject, ISqlMapSession session)
>> at
>> IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteUpdate(ISqlMapSession
>> session, Object parameterObject)
>> at IBatisNet.DataMapper.SqlMapper.Update(String statementName, Object
>> parameterObject)
>>
>
>
--
View this message in context:
http://www.nabble.com/Escaping-the-question-mark-tp16609896p22930557.html
Sent from the iBATIS - User - Cs mailing list archive at Nabble.com.