From: Michael D. <mik...@us...> - 2004-04-13 13:16:09
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Impl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23306/Impl Modified Files: PreparerImpl.cs Log Message: Fixed problem with Quoting Parameters. Named Parameters now have meaningless names such as p0, p1, p2, etc... Index: PreparerImpl.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Impl/PreparerImpl.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PreparerImpl.cs 10 Mar 2004 15:36:46 -0000 1.2 --- PreparerImpl.cs 13 Apr 2004 13:02:00 -0000 1.3 *************** *** 79,83 **** ! public IDbCommand BuildCommand(SqlString sqlString) { if(builtCommands.ContainsKey(sqlString)) --- 79,85 ---- ! public IDbCommand BuildCommand(SqlString sqlString) ! { ! int paramIndex = 0; if(builtCommands.ContainsKey(sqlString)) *************** *** 87,99 **** StringBuilder builder = new StringBuilder(sqlString.SqlParts.Length * 15); ! foreach(object part in sqlString.SqlParts) { Parameter parameter = part as Parameter; ! if(parameter!=null) { ! builder.Append(parameter.GetSqlName(factory.ConnectionProvider)); ! IDbDataParameter dbParam = parameter.GetIDbDataParameter(cmd, factory.ConnectionProvider); cmd.Parameters.Add(dbParam); } ! else { builder.Append((string)part); } --- 89,107 ---- StringBuilder builder = new StringBuilder(sqlString.SqlParts.Length * 15); ! foreach(object part in sqlString.SqlParts) ! { Parameter parameter = part as Parameter; ! if(parameter!=null) ! { ! string paramName = "p" + paramIndex; ! builder.Append( parameter.GetSqlName(factory.ConnectionProvider, paramName) ); ! IDbDataParameter dbParam = parameter.GetIDbDataParameter(cmd, factory.ConnectionProvider, paramName); cmd.Parameters.Add(dbParam); + + paramIndex++; } ! else ! { builder.Append((string)part); } *************** *** 105,109 **** return cmd; - } --- 113,116 ---- |