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;