You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by gb...@apache.org on 2006/07/18 22:17:30 UTC

svn commit: r423230 - in /ibatis/trunk/cs/mapper: ./ IBatisNet.Common.Test/ IBatisNet.Common.Test/Domain/ IBatisNet.Common.Test/NUnit/CommonTests/Transaction/ IBatisNet.Common.Test/NUnit/CommonTests/Utilities/ IBatisNet.DataAccess.Test/ IBatisNet.DataM...

Author: gbayon
Date: Tue Jul 18 13:17:27 2006
New Revision: 423230

URL: http://svn.apache.org/viewvc?rev=423230&view=rev
Log:
Fix IBATISNET-167 
Fix IBATISNET-170
Fix IBATISNET-172

Modified:
    ibatis/trunk/cs/mapper/IBatisNet.2005.sln
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/DataBase.config
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Property.cs
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Transaction/BaseTest.cs
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/FieldAccessorTest.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/IBatisNet.DataAccess.Test.2005.csproj
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/Account.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.2005.csproj
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Account.xml
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/DynamicAccount.xml
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Order.xml
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/IBatisNet.DataMapper.Test.dll.config
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/AssemblyInfo.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DataReaderTransformer.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ArgumentStrategy/SelectGenericListStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/BaseStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ReaderAutoMapper.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/IResultStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ObjectStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultClassStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs

Modified: ibatis/trunk/cs/mapper/IBatisNet.2005.sln
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.2005.sln?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.2005.sln (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.2005.sln Tue Jul 18 13:17:27 2006
@@ -14,12 +14,10 @@
 	ProjectSection(SolutionItems) = preProject
 		External-Bin\Net\1.1\Castle.DynamicProxy.dll = External-Bin\Net\1.1\Castle.DynamicProxy.dll
 		External-Bin\Net\1.1\Castle.DynamicProxy.license.txt = External-Bin\Net\1.1\Castle.DynamicProxy.license.txt
-		IBatisNet.Schemas\DaoConfig.xsd = IBatisNet.Schemas\DaoConfig.xsd
 		iBATIS.build = iBATIS.build
 		External-Bin\Net\1.1\log4net.dll = External-Bin\Net\1.1\log4net.dll
 		External-Bin\Net\1.1\log4net.license.txt = External-Bin\Net\1.1\log4net.license.txt
 		External-Bin\Net\1.1\log4net.xml = External-Bin\Net\1.1\log4net.xml
-		External-Bin\Net\1.1\nunit.framework.dll = External-Bin\Net\1.1\nunit.framework.dll
 		providers.config = providers.config
 		External-Bin\Net\1.1\readme.txt = External-Bin\Net\1.1\readme.txt
 	EndProjectSection

Modified: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/DataBase.config
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/DataBase.config?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/DataBase.config (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/DataBase.config Tue Jul 18 13:17:27 2006
@@ -5,7 +5,7 @@
 	<add key="userid" value="IBatisNet" />
 	<add key="password" value="test" />
 	<add key="database" value="IBatisNet" />
-	<add key="datasource" value="(local)\NetSDK" />
+	<add key="datasource" value="Potiron" />
 	<add key="useridHibernate" value="NHibernate" />
 	<add key="databaseHibernate" value="NHibernate" />
 	<add key="driverOdbc" value="{SQL Server}" />

Modified: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Property.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Property.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Property.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Property.cs Tue Jul 18 13:17:27 2006
@@ -38,7 +38,7 @@
 		private Guid _guid = Guid.Empty;
 		private TimeSpan _timeSpan = TimeSpan.MinValue;
 		private Account _account = null;
-        private Days _day;
+        private Days day;
 
 #if dotnet2
         private Int32? _intNullable = null;
@@ -56,8 +56,8 @@
 
         public Days Day
         {
-            get { return _day; }
-            set { _day = value; }
+            get { return day; }
+            set { day = value; }
         }
 
 		public string String

Modified: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj Tue Jul 18 13:17:27 2006
@@ -78,7 +78,7 @@
       <Name>log4net</Name>
       <HintPath>..\External-Bin\Net\1.1\log4net.dll</HintPath>
     </Reference>
-    <Reference Include="nunit.framework, Version=2.2.6.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
+    <Reference Include="nunit.framework, Version=2.2.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
     <Reference Include="System">
       <Name>System</Name>
     </Reference>

Modified: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Transaction/BaseTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Transaction/BaseTest.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Transaction/BaseTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Transaction/BaseTest.cs Tue Jul 18 13:17:27 2006
@@ -29,15 +29,15 @@
 		/// <summary>
 		/// The sqlMap
 		/// </summary>
-		protected static SqlMapper sqlMap;
+		protected static ISqlMapper sqlMap;
 		/// <summary>
 		/// A daoManager with a SimpledaoSession
 		/// </summary>
-		protected static DaoManager daoManager = null;
+		protected static IDaoManager daoManager = null;
 		/// <summary>
 		/// A daoManager with a sqlMapSession
 		/// </summary>
-		protected static DaoManager daoManagerSqlMap = null;
+		protected static IDaoManager daoManagerSqlMap = null;
 
 		private static readonly ILog _logger = LogManager.GetLogger( System.Reflection.MethodBase.GetCurrentMethod().DeclaringType );
 		
@@ -91,7 +91,7 @@
 		/// </param>
 		protected static void Configure(object obj)
 		{
-			sqlMap = (SqlMapper)obj;
+			sqlMap = (ISqlMapper)obj;
 		}
 
 		/// <summary>

Modified: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/FieldAccessorTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/FieldAccessorTest.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/FieldAccessorTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/FieldAccessorTest.cs Tue Jul 18 13:17:27 2006
@@ -76,8 +76,8 @@
             accountSetAccessor = factorySet.CreateSetAccessor(typeof(Property), "_account");
             accountGetAccessor = factoryGet.CreateGetAccessor(typeof(Property), "_account");
 
-            enumSetAccessor = factorySet.CreateSetAccessor(typeof(Property), "_day");
-            enumGetAccessor = factoryGet.CreateGetAccessor(typeof(Property), "_day");
+            enumSetAccessor = factorySet.CreateSetAccessor(typeof(Property), "day");
+            enumGetAccessor = factoryGet.CreateGetAccessor(typeof(Property), "day");
 
 #if dotnet2
             nullableSetAccessor = factorySet.CreateSetAccessor(typeof(Property), "_intNullable");

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/IBatisNet.DataAccess.Test.2005.csproj
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/IBatisNet.DataAccess.Test.2005.csproj?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/IBatisNet.DataAccess.Test.2005.csproj (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/IBatisNet.DataAccess.Test.2005.csproj Tue Jul 18 13:17:27 2006
@@ -74,7 +74,7 @@
     <ErrorReport>prompt</ErrorReport>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="nunit.framework, Version=2.2.6.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
+    <Reference Include="nunit.framework, Version=2.2.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
     <Reference Include="System">
       <Name>System</Name>
     </Reference>

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/Account.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/Account.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/Account.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/Account.cs Tue Jul 18 13:17:27 2006
@@ -8,7 +8,7 @@
 	[Serializable]
 	public class Account
 	{
-		private int _id;
+		private int id;
 		private string _firstName;
 		private string _lastName;
 		private string _emailAddress;
@@ -19,17 +19,17 @@
 		public Account()
 		{}
 
-		public Account(int id, string firstName, string lastName)
+        public Account(int identifiant, string firstName, string lastName)
 		{
-			_id = id;
+            id = identifiant;
 			_firstName = firstName;
 			_lastName = lastName;
 		}
 
 		public int Id
 		{
-			get { return _id; }
-			set { _id = value; }
+			get { return id; }
+			set { id = value; }
 		}
 
 		public string FirstName

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.2005.csproj
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.2005.csproj?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.2005.csproj (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.2005.csproj Tue Jul 18 13:17:27 2006
@@ -78,7 +78,7 @@
       <Name>log4net</Name>
       <HintPath>..\External-Bin\Net\1.1\log4net.dll</HintPath>
     </Reference>
-    <Reference Include="nunit.framework, Version=2.2.6.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
+    <Reference Include="nunit.framework, Version=2.2.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
     <Reference Include="System">
       <Name>System</Name>
     </Reference>

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Account.xml
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Account.xml?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Account.xml (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Account.xml Tue Jul 18 13:17:27 2006
@@ -76,17 +76,17 @@
 	
 		<resultMap id="account-result-constructor"  class="Account" >
 			<constructor>
-				<argument argumentName="id"			column="Account_ID"/>
-				<argument argumentName="firstName"  column="Account_FirstName"/>
-				<argument argumentName="lastName"   column="Account_LastName"/>
+				<argument argumentName="identifiant"	column="Account_ID"/>
+				<argument argumentName="firstName"    column="Account_FirstName"/>
+				<argument argumentName="lastName"     column="Account_LastName"/>
 			</constructor>
 			<result property="EmailAddress" column="Account_Email" nullValue="no_email@provided.com"/>
 			<result property="BannerOption" column="Account_Banner_Option" dbType="Varchar" type="bool"/>
-			<result property="CartOption"	column="Account_Cart_Option" typeHandler="HundredsBool"/>
+			<result property="CartOption"	  column="Account_Cart_Option" typeHandler="HundredsBool"/>
 		</resultMap>
    
     <resultMap id="account-result"  class="Account" >
-			<result property="_id"           column="Account_ID"/>
+			<result property="id"           column="Account_ID"/>
 			<result property="FirstName"    column="Account_FirstName"/>
 			<result property="LastName"     column="Account_LastName"/>
 			<result property="EmailAddress" column="Account_Email" nullValue="no_email@provided.com"/>
@@ -265,7 +265,7 @@
 		<select id="GetAllAccountsViaResultClass" 
 			resultClass="Account">
 			select
-			Account_ID as _id,
+			Account_ID as id,
 			Account_FirstName as FirstName,
 			Account_LastName as LastName,
 			Account_Email as EmailAddress

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/DynamicAccount.xml
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/DynamicAccount.xml?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/DynamicAccount.xml (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/DynamicAccount.xml Tue Jul 18 13:17:27 2006
@@ -265,14 +265,14 @@
 					parameterClass="Account"
 					resultClass="Account">
 			select
-			Account_ID			as _id,
+			Account_ID			as id,
 			Account_FirstName	as _firstName,
 			Account_LastName	as _lastName,
 			Account_Email		as _emailAddress
 			from Accounts
 			<dynamic prepend="WHERE" >
-			<isGreaterThan prepend="AND" property="_id" compareValue="0"  >
-				Account_ID = #_id#
+			<isGreaterThan prepend="AND" property="id" compareValue="0"  >
+				Account_ID = #id#
 			</isGreaterThan>
 			<isNotNull prepend="AND" property="Ids" >
 				Account_ID in

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Order.xml
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Order.xml?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Order.xml (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/Order.xml Tue Jul 18 13:17:27 2006
@@ -686,6 +686,11 @@
 					resultMap="order-result-constructor3">
 			select * from Orders where Order_ID = #value#
 		</statement>
+
+    <statement id="GetManyOrderWithConstructor"
+					resultMap="order-result-constructor3">
+      select * from Orders
+    </statement>
 		
 		<statement id="GetOrderConstructor4"
 					parameterClass="int"

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs Tue Jul 18 13:17:27 2006
@@ -506,6 +506,17 @@
 
         }
 
+        /// <summary>
+        /// Test  QueryForList with constructor use on result object
+        /// </summary>
+        [Test]
+        public void TestQueryForListWithConstructor()
+        {
+            IList<Order> list = sqlMap.QueryForList<Order>("GetManyOrderWithConstructor", null);
+
+            Assert.IsTrue(list.Count>0);
+        }
+
         #endregion
 
         #region Row delegate

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/IBatisNet.DataMapper.Test.dll.config
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/IBatisNet.DataMapper.Test.dll.config?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/IBatisNet.DataMapper.Test.dll.config (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/IBatisNet.DataMapper.Test.dll.config Tue Jul 18 13:17:27 2006
@@ -29,8 +29,9 @@
 	</appSettings>
 
 	<iBATIS>
-		<logging>
- <!--			<logFactoryAdapter type="IBatisNet.Common.Logging.Impl.ConsoleOutLoggerFA, IBatisNet.Common">
+ 		<logging>
+<!--			
+		<logFactoryAdapter type="IBatisNet.Common.Logging.Impl.ConsoleOutLoggerFA, IBatisNet.Common">
 				<arg key="showLogName" value="true" />
 				<arg key="showDataTime" value="true" />
 				<arg key="level" value="ALL" />
@@ -40,7 +41,7 @@
        <logFactoryAdapter type="IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net">
         <arg key="configType" value="inline" />
       </logFactoryAdapter>
--->     
+ -->    
      <logFactoryAdapter type="IBatisNet.Common.Logging.Impl.NoOpLoggerFA, IBatisNet.Common" />
 
       

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/AssemblyInfo.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/AssemblyInfo.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/AssemblyInfo.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/AssemblyInfo.cs Tue Jul 18 13:17:27 2006
@@ -33,4 +33,4 @@
 [assembly: AssemblyTitle("IBatisNet.DataMapper")]
 [assembly: AssemblyDescription("Map objects to your SQL statements or stored procedures.")]
 
-[assembly: AssemblyVersion("1.5.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("1.5.1")]
\ No newline at end of file

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DataReaderTransformer.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DataReaderTransformer.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DataReaderTransformer.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Commands/DataReaderTransformer.cs Tue Jul 18 13:17:27 2006
@@ -42,7 +42,7 @@
 		/// <param name="dbProvider">The databse provider <see cref="IDbProvider"/></param>
 		public static IDataReader Transform(IDataReader reader, IDbProvider dbProvider)
 		{
-			if (!dbProvider.AllowMARS)
+            if (!dbProvider.AllowMARS && !(reader is InMemoryDataReader))
 			{
 				// The underlying reader will be closed.
 				return new InMemoryDataReader(reader);

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ArgumentStrategy/SelectGenericListStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ArgumentStrategy/SelectGenericListStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ArgumentStrategy/SelectGenericListStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ArgumentStrategy/SelectGenericListStrategy.cs Tue Jul 18 13:17:27 2006
@@ -61,7 +61,7 @@
             // Get the select statement
             IMappedStatement selectStatement = request.MappedStatement.SqlMap.GetMappedStatement(mapping.Select);
            
-            reader = DataReaderTransformer.Transforme(reader, request.Session.DataSource.DbProvider);
+            reader = DataReaderTransformer.Transform(reader, request.Session.DataSource.DbProvider);
 
             Type[] typeArgs = mapping.MemberType.GetGenericArguments();
             Type genericList = typeof(IList<>);

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/BaseStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/BaseStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/BaseStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/BaseStrategy.cs Tue Jul 18 13:17:27 2006
@@ -42,208 +42,6 @@
 	/// </summary>
 	public abstract class BaseStrategy
 	{
-//		/// <summary>
-//		/// Gets the argument value for an argument constructor.
-//		/// </summary>
-//		/// <param name="request">The request.</param>
-//		/// <param name="resultMap">The result map.</param>
-//		/// <param name="mapping">The mapping.</param>
-//		/// <param name="reader">The reader.</param>
-//		/// <returns>The argument value</returns>
-//		protected object GetObjectArgument(RequestScope request, ResultMap resultMap, ResultProperty mapping, ref IDataReader reader)
-//		{
-//			string selectStatement = mapping.Select;
-//
-//			if (selectStatement.Length == 0 && mapping.NestedResultMap == null)
-//			{
-//				// If the property is not a 'select' ResultProperty 
-//				//                     or a 'resultMap' ResultProperty
-//				// We have a 'normal' ResultMap
-//
-//				#region Not a select statement
-//				if (mapping.TypeHandler == null || mapping.TypeHandler is UnknownTypeHandler) // Find the TypeHandler
-//				{
-//					lock(mapping) 
-//					{
-//						if (mapping.TypeHandler == null || mapping.TypeHandler is UnknownTypeHandler)
-//						{
-//							int columnIndex = 0;
-//							if (mapping.ColumnIndex == ResultProperty.UNKNOWN_COLUMN_INDEX) 
-//							{
-//								columnIndex = reader.GetOrdinal(mapping.ColumnName);
-//							} 
-//							else 
-//							{
-//								columnIndex = mapping.ColumnIndex;
-//							}
-//							Type systemType =((IDataRecord)reader).GetFieldType(columnIndex);
-//
-//							mapping.TypeHandler = request.DataExchangeFactory.TypeHandlerFactory.GetTypeHandler(systemType);
-//						}
-//					}					
-//				}
-//
-//				object dataBaseValue = mapping.GetDataBaseValue( reader );
-//				request.IsRowDataFound = request.IsRowDataFound || (dataBaseValue != null);
-//
-//				return dataBaseValue;
-//
-//				#endregion
-//			}
-//			else if (mapping.NestedResultMap != null) // 'resultMap' ResultProperty
-//			{
-//				object[] parameters = null;
-//				if (mapping.NestedResultMap.Parameters.Count >0)
-//				{
-//					parameters = new object[resultMap.Parameters.Count];
-//					// Fill parameters array
-//					for(int index=0; index< mapping.NestedResultMap.Parameters.Count; index++)
-//					{
-//						ResultProperty property = mapping.NestedResultMap.Parameters[index];
-//						parameters[index] = property.GetDataBaseValue( reader );
-//						request.IsRowDataFound = request.IsRowDataFound || (parameters[index] != null);
-//					}
-//				}
-//
-//				object obj = mapping.NestedResultMap.CreateInstanceOfResult(parameters);
-//				if (FillObjectWithReaderAndResultMap(request, reader, mapping.NestedResultMap, obj) == false)
-//				{
-//					obj = null;
-//				}
-//
-//				return obj;
-//			}
-//			else //'select' ResultProperty 
-//			{
-//				// Get the select statement
-//				IMappedStatement queryStatement = request.MappedStatement.SqlMap.GetMappedStatement(selectStatement);
-//				string paramString = mapping.ColumnName;
-//				object keys = null;
-//				bool wasNull = false;
-//
-//				#region Find Key(s)
-//				if (paramString.IndexOf(',')>0 || paramString.IndexOf('=')>0) // composite parameters key
-//				{
-//					IDictionary keyMap = new Hashtable();
-//					keys = keyMap;
-//					// define which character is seperating fields
-//					char[] splitter  = {'=',','};
-//
-//					string[] paramTab = paramString.Split(splitter);
-//					if (paramTab.Length % 2 != 0) 
-//					{
-//						throw new DataMapperException("Invalid composite key string format in '"+mapping.PropertyName+". It must be: property1=column1,property2=column2,..."); 
-//					}
-//					IEnumerator enumerator = paramTab.GetEnumerator();
-//					while (!wasNull && enumerator.MoveNext()) 
-//					{
-//						string hashKey = ((string)enumerator.Current).Trim();
-//						enumerator.MoveNext();
-//						object hashValue = reader.GetValue( reader.GetOrdinal(((string)enumerator.Current).Trim()) );
-//
-//						keyMap.Add(hashKey, hashValue );
-//						wasNull = (hashValue == DBNull.Value);
-//					}
-//				} 
-//				else // single parameter key
-//				{
-//					keys = reader.GetValue(reader.GetOrdinal(paramString));
-//					wasNull = reader.IsDBNull(reader.GetOrdinal(paramString));
-//				}
-//				#endregion
-//
-//				if (wasNull) 
-//				{
-//					// set the value of an object property to null
-//					return null;
-//				} 
-//				else // Collection object or .Net object
-//				{
-//					// lazyLoading is not permit for argument constructor
-//
-//					#region Collection object or .NET object
-//					
-//					if (mapping.MemberType.BaseType == typeof(Array))
-//					{
-//						reader = DataReaderTransformer.Transform(reader, request.Session.DataSource.DbProvider);
-//						IList values = queryStatement.ExecuteQueryForList(request.Session, keys); 
-//
-//						Type elementType = mapping.MemberType.GetElementType();
-//						Array array = Array.CreateInstance(elementType, values.Count);
-//						int count = values.Count;
-//						for(int i=0;i<count;i++)
-//						{
-//							array.SetValue(values[i],i);
-//						}
-//						return array;
-//					}
-//						// Check if the object to Map implement 'IList' or is IList type
-//						// If yes the ResultProperty is map to a IList object
-//					else if ( typeof(IList).IsAssignableFrom(mapping.MemberType) )
-//					{
-//						if (mapping.MemberType == typeof(IList))
-//						{
-//							reader = DataReaderTransformer.Transform(reader, request.Session.DataSource.DbProvider);
-//							return queryStatement.ExecuteQueryForList(request.Session, keys); 
-//						}
-//						else // Strongly typed List
-//						{
-//							reader = DataReaderTransformer.Transform(reader, request.Session.DataSource.DbProvider);
-//							IFactory factory = request.ObjectFactory.CreateFactory(mapping.MemberType, Type.EmptyTypes);
-//							object values = factory.CreateInstance(null);
-//							queryStatement.ExecuteQueryForList(request.Session, keys, (IList)values);
-//							return values;
-//						}
-//					}
-//#if dotnet2
-//                    else if (mapping.MemberType.IsGenericType &&
-//                         mapping.MemberType.GetGenericTypeDefinition() == typeof(IList<>)) 
-//                    {
-//                        reader = DataReaderTransformer.Transform(reader, request.Session.DataSource.DbProvider);
-//
-//                        Type[] typeArgs = mapping.MemberType.GetGenericArguments();
-//                        Type genericList = typeof(IList<>);
-//                        Type constructedType = genericList.MakeGenericType(typeArgs);
-//                        Type elementType = mapping.MemberType.GetGenericArguments()[0];
-//
-//                        Type mappedStatementType = queryStatement.GetType();
-//
-//                    	Type[] typeArguments = { typeof(IDalSession), typeof(object) };
-//
-//                        MethodInfo[] mis = mappedStatementType.GetMethods(BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Instance);
-//                        MethodInfo mi = null;
-//                        foreach (MethodInfo m in mis)
-//                        {
-//                            if (m.IsGenericMethod &&
-//                                m.Name == "ExecuteQueryForList" &&
-//                                m.GetParameters().Length == 2)
-//                            {
-//                                mi = m;
-//                                break;
-//                            }
-//                        }
-//
-//                    	MethodInfo miConstructed = mi.MakeGenericMethod(elementType);
-//
-//                        // Invoke the method.
-//                        object[] args = { request.Session, keys };
-//                        object values = miConstructed.Invoke(queryStatement, args);
-//
-//                        return values;
-//                    }
-//#endif
-//					else // The ResultProperty is map to a .Net object
-//					{
-//						reader = DataReaderTransformer.Transform(reader, request.Session.DataSource.DbProvider);
-//						return queryStatement.ExecuteQueryForObject(request.Session, keys);
-//					}
-//					#endregion
-//
-//				}
-//			}
-//		}
-//			
-
 		/// <summary>
 		/// Fills the object with reader and result map.
 		/// </summary>

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs Tue Jul 18 13:17:27 2006
@@ -249,13 +249,23 @@
 			
 			using ( IDbCommand command = request.IDbCommand )
 			{
-				using ( IDataReader reader = command.ExecuteReader() )
-				{				
+                IDataReader reader = command.ExecuteReader();
+			    try
+			    {
 					if ( reader.Read() )
 					{
-						result = _resultStrategy.Process(request, reader, resultObject);		
-					}
-				}
+                        result = _resultStrategy.Process(request, ref reader, resultObject);		
+					}			        
+			    }
+                catch
+                {
+                    throw;
+                }
+                finally
+                {
+                    reader.Close();
+                    reader.Dispose();
+                }	    
 
 				ExecutePostSelect(request);
 
@@ -325,12 +335,22 @@
 
             using (IDbCommand command = request.IDbCommand)
             {
-                using (IDataReader reader = command.ExecuteReader())
+                IDataReader reader = command.ExecuteReader();
+                try 
                 {
                     if (reader.Read())
                     {
-                        result = (T)_resultStrategy.Process(request, reader, resultObject);
+                        result = (T)_resultStrategy.Process(request, ref reader, resultObject);
                     }
+			    }
+                catch
+                {
+                    throw;
+                }
+                finally
+                {
+                    reader.Close();
+                    reader.Dispose();
                 }
 
                 ExecutePostSelect( request );
@@ -457,9 +477,10 @@
 				{
 					list = _statement.CreateInstanceOfListClass();
 				}
-
-				using ( IDataReader reader = command.ExecuteReader() )
-				{			
+                
+			    IDataReader reader = command.ExecuteReader();
+                try		
+                {
 					// skip results
 					for (int i = 0; i < skipResults; i++) 
 					{
@@ -476,7 +497,7 @@
 						while ( (maxResults == NO_MAXIMUM_RESULTS || n < maxResults) 
 							&& reader.Read() )
 						{
-							object obj = _resultStrategy.Process(request, reader, null);
+                            object obj = _resultStrategy.Process(request, ref reader, null);
 						
 							list.Add( obj );
 							n++;
@@ -487,13 +508,22 @@
 						while ( (maxResults == NO_MAXIMUM_RESULTS || n < maxResults) 
 							&& reader.Read() )
 						{
-							object obj = _resultStrategy.Process(request, reader, null);
+                            object obj = _resultStrategy.Process(request, ref reader, null);
 
 							rowDelegate(obj, parameterObject, list);
 							n++;
 						}
 					}
-				}
+			    }
+			    catch
+			    {
+			        throw;
+			    }
+			    finally
+                {
+			        reader.Close();
+			        reader.Dispose();                    
+                }
 
 				ExecutePostSelect(request);
 
@@ -518,15 +548,25 @@
 
 			using ( IDbCommand command = request.IDbCommand )
 			{
-				using ( IDataReader reader = command.ExecuteReader() )
-				{			
+				IDataReader reader = command.ExecuteReader();
+                try 
+                {			
 					while ( reader.Read() )
 					{
-						object obj = _resultStrategy.Process(request, reader, null);
+                        object obj = _resultStrategy.Process(request, ref reader, null);
 				
 						resultObject.Add( obj );
 					}
-				}
+			    }
+                catch
+                {
+                    throw;
+                }
+                finally
+                {
+                    reader.Close();
+                    reader.Dispose();
+                }
 
 				ExecutePostSelect(request);
 
@@ -620,8 +660,9 @@
                 {
                     list = _statement.CreateInstanceOfGenericListClass<T>();
                 }
-
-                using (IDataReader reader = command.ExecuteReader())
+                
+                IDataReader reader = command.ExecuteReader();
+                try 
                 {
                     // skip results
                     for (int i = 0; i < skipResults; i++)
@@ -639,7 +680,7 @@
                         while ((maxResults == NO_MAXIMUM_RESULTS || n < maxResults)
                             && reader.Read())
                         {
-                            T obj = (T)_resultStrategy.Process(request, reader, null);
+                            T obj = (T)_resultStrategy.Process(request, ref reader, null);
 
                             list.Add(obj);
                             n++;
@@ -650,12 +691,21 @@
                         while ((maxResults == NO_MAXIMUM_RESULTS || n < maxResults)
                             && reader.Read())
                         {
-                            T obj = (T)_resultStrategy.Process(request, reader, null);
+                            T obj = (T)_resultStrategy.Process(request, ref reader, null);
 
                             rowDelegate(obj, parameterObject, list);
                             n++;
                         }
                     }
+			    }
+                catch
+                {
+                    throw;
+                }
+                finally
+                {
+                    reader.Close();
+                    reader.Dispose();
                 }
 
                 ExecutePostSelect( request );
@@ -681,14 +731,24 @@
 
             using (IDbCommand command = request.IDbCommand)
             {
-                using (IDataReader reader = command.ExecuteReader())
+                IDataReader reader = command.ExecuteReader();
+                try 
                 {
                     while (reader.Read())
                     {
-                        T obj = (T)_resultStrategy.Process(request, reader, null);
+                        T obj = (T)_resultStrategy.Process(request, ref reader, null);
 
                         resultObject.Add(obj);
                     }
+ 			    }
+                catch
+                {
+                    throw;
+                }
+                finally
+                {
+                    reader.Close();
+                    reader.Dispose();
                 }
 
                 ExecutePostSelect( request );
@@ -863,13 +923,14 @@
 
 			using (IDbCommand command = request.IDbCommand)
 			{
-				using (IDataReader reader = command.ExecuteReader())
-				{
+			    IDataReader reader = command.ExecuteReader();
+                try 
+                {
 					if (rowDelegate == null)
 					{
 						while (reader.Read() )
 						{
-							object obj = _resultStrategy.Process(request, reader, null);
+                            object obj = _resultStrategy.Process(request, ref reader, null);
 							object key = ObjectProbe.GetMemberValue(obj, keyProperty, request.DataExchangeFactory.AccessorFactory);
 							object value = obj;
 							if (valueProperty != null)
@@ -883,7 +944,7 @@
 					{
 						while (reader.Read())
 						{
-							object obj = _resultStrategy.Process(request, reader, null);
+                            object obj = _resultStrategy.Process(request, ref reader, null);
 							object key = ObjectProbe.GetMemberValue(obj, keyProperty,request.DataExchangeFactory.AccessorFactory);
 							object value = obj;
 							if (valueProperty != null)
@@ -894,7 +955,16 @@
 
 						}
 					}
-				}
+                }
+                catch
+                {
+                    throw;
+                }
+                finally
+                {
+                    reader.Close();
+                    reader.Dispose();
+                }
 			}
 			return map;
 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ReaderAutoMapper.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ReaderAutoMapper.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ReaderAutoMapper.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ReaderAutoMapper.cs Tue Jul 18 13:17:27 2006
@@ -101,7 +101,7 @@
 				{
                     ISetAccessorFactory setAccessorFactory = dataExchangeFactory.AccessorFactory.SetAccessorFactory;
                     ISetAccessor setAccessor = setAccessorFactory.CreateSetAccessor(targetType, membersName[i]);
-                    propertyMap.Add(membersName[i].ToUpper(), setAccessor);
+                    propertyMap.Add(membersName[i], setAccessor);
 				}
 
 				// Get all column Name from the reader
@@ -111,7 +111,7 @@
 				for (int i = 0; i < count; i++) 
 				{
 					string columnName = dataColumn.Rows[i][0].ToString();
-                    ISetAccessor matchedSetAccessor = propertyMap[columnName.ToUpper()] as ISetAccessor;
+                    ISetAccessor matchedSetAccessor = propertyMap[columnName] as ISetAccessor;
 
 					ResultProperty property = new ResultProperty();
 					property.ColumnName = columnName;

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs Tue Jul 18 13:17:27 2006
@@ -43,7 +43,7 @@
 		/// <param name="request">The request.</param>
 		/// <param name="reader">The reader.</param>
 		/// <param name="resultObject">The result object.</param>
-		private void AutoMapReader(RequestScope request, IDataReader reader,ref object resultObject) 
+		private void AutoMapReader(RequestScope request, ref IDataReader reader,ref object resultObject) 
 		{
 			if (request.Statement.RemapResults)
 			{
@@ -84,7 +84,7 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject; 
 
@@ -93,7 +93,7 @@
 				outObject = request.Statement.CreateInstanceOfResultClass();
 			}
 
-            AutoMapReader(request, reader, ref outObject);
+            AutoMapReader(request, ref reader, ref outObject);
 
 			return outObject;
         }

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs Tue Jul 18 13:17:27 2006
@@ -47,7 +47,7 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject; 
 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/IResultStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/IResultStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/IResultStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/IResultStrategy.cs Tue Jul 18 13:17:27 2006
@@ -40,6 +40,6 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        object Process(RequestScope request, IDataReader reader, object resultObject);
+        object Process(RequestScope request, ref IDataReader reader, object resultObject);
     }
 }

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs Tue Jul 18 13:17:27 2006
@@ -47,7 +47,7 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject; 
 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ObjectStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ObjectStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ObjectStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ObjectStrategy.cs Tue Jul 18 13:17:27 2006
@@ -23,7 +23,6 @@
  ********************************************************************************/
 #endregion
 
-using System.Collections;
 using System.Data;
 using IBatisNet.DataMapper.Configuration.ResultMapping;
 using IBatisNet.DataMapper.Scope;
@@ -45,7 +44,7 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject; 
 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultClassStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultClassStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultClassStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultClassStrategy.cs Tue Jul 18 13:17:27 2006
@@ -59,24 +59,24 @@
 		/// <param name="request">The request.</param>
 		/// <param name="reader">The reader.</param>
 		/// <param name="resultObject">The result object.</param>
-		public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
 		{
 			// Check if the ResultClass is a 'primitive' Type
 			if (request.DataExchangeFactory.TypeHandlerFactory.IsSimpleType(request.Statement.ResultClass))
 			{
-				return _simpleTypeStrategy.Process(request, reader, resultObject);
+                return _simpleTypeStrategy.Process(request, ref reader, resultObject);
 			}
             else if (typeof(IDictionary).IsAssignableFrom(request.Statement.ResultClass)) 
 			{
-				return _dictionaryStrategy.Process(request, reader, resultObject);
+                return _dictionaryStrategy.Process(request, ref reader, resultObject);
 			}
             else if (typeof(IList).IsAssignableFrom(request.Statement.ResultClass)) 
 			{
-				return _listStrategy.Process(request, reader, resultObject);
+                return _listStrategy.Process(request, ref reader, resultObject);
 			}
 			else
 			{
-				return _autoMapStrategy.Process(request, reader, resultObject);
+                return _autoMapStrategy.Process(request, ref reader, resultObject);
 			}
 		}
 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs Tue Jul 18 13:17:27 2006
@@ -44,7 +44,7 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
             object outObject = resultObject; 
 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs?rev=423230&r1=423229&r2=423230&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs Tue Jul 18 13:17:27 2006
@@ -47,7 +47,7 @@
         /// <param name="request">The request.</param>
         /// <param name="reader">The reader.</param>
         /// <param name="resultObject">The result object.</param>
-        public object Process(RequestScope request, IDataReader reader, object resultObject)
+        public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject;