Author: gbayon
Date: Tue Apr 25 10:40:27 2006
New Revision: 396940

URL: http://svn.apache.org/viewcvs?rev=396940&view=rev
Log:
Fixed issue with ObjectFactory and array parameter constructor.
Added xml comment
Renamed unit tests

Added:
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs   (with props)
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs   (with props)
Modified:
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Account.cs
    
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj
    ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.csproj
    
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/ObjectFactoryTest.cs
    ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/FactoryBuilder.cs
    
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitFieldAccessor.cs
    
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitPropertyAccessor.cs
    
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/IMemberAccessor.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/providers.config

Modified: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Account.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Account.cs?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Account.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Account.cs Tue Apr 25 
10:40:27 2006
@@ -21,6 +21,11 @@
                public Account()
                {}
 
+        public Account(int[] ids)
+        {
+            _ids = ids;
+        }
+
                public Account(DateTime date)
                {
                        _date = date;

Added: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs?rev=396940&view=auto
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs (added)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs Tue Apr 25 
10:40:27 2006
@@ -0,0 +1,14 @@
+using System;
+
+namespace IBatisNet.Common.Test.Domain
+{
+       /// <summary>
+       /// Summary description for Item.
+       /// </summary>
+       public class Item
+       {
+               protected Item()
+               {
+               }
+       }
+}

Propchange: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Item.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs?rev=396940&view=auto
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs (added)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs Tue Apr 25 
10:40:27 2006
@@ -0,0 +1,14 @@
+using System;
+
+namespace IBatisNet.Common.Test.Domain
+{
+       /// <summary>
+       /// Summary description for Order.
+       /// </summary>
+       public class Order
+       {
+               private Order()
+               {
+               }
+       }
+}

Propchange: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/mapper/IBatisNet.Common.Test/Domain/Order.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.2005.csproj?rev=396940&r1=396939&r2=396940&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 Apr 25 10:40:27 2006
@@ -103,6 +103,8 @@
     <Compile Include="Domain\Account.cs">
       <SubType>Code</SubType>
     </Compile>
+    <Compile Include="Domain\Item.cs" />
+    <Compile Include="Domain\Order.cs" />
     <Compile Include="Domain\Property.cs" />
     <Compile Include="Domain\Simple.cs" />
     <Compile Include="NUnit\CommonTests\ConfigWatcher\ConfigWatcherTest.cs">

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.csproj
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.csproj?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.csproj 
(original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common.Test/IBatisNet.Common.Test.csproj 
Tue Apr 25 10:40:27 2006
@@ -212,6 +212,16 @@
                     BuildAction = "Compile"
                 />
                 <File
+                    RelPath = "Domain\Item.cs"
+                    SubType = "Code"
+                    BuildAction = "Compile"
+                />
+                <File
+                    RelPath = "Domain\Order.cs"
+                    SubType = "Code"
+                    BuildAction = "Compile"
+                />
+                <File
                     RelPath = "Domain\Property.cs"
                     SubType = "Code"
                     BuildAction = "Compile"

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/ObjectFactoryTest.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/ObjectFactoryTest.cs?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- 
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/ObjectFactoryTest.cs
 (original)
+++ 
ibatis/trunk/cs/mapper/IBatisNet.Common.Test/NUnit/CommonTests/Utilities/ObjectFactoryTest.cs
 Tue Apr 25 10:40:27 2006
@@ -1,3 +1,4 @@
+using IBatisNet.Common.Exceptions;
 using IBatisNet.Common.Test.Domain;
 using IBatisNet.Common.Utilities.Objects;
 using NUnit.Framework;
@@ -9,9 +10,54 @@
     [TestFixture] 
        public class ObjectFactoryTest
        {
+               [Test]
+               [ExpectedException(typeof(ProbeException))]
+               public void PrivateConstructor()
+               {
+                       IObjectFactory objectFactory = new ObjectFactory(true);
+
+                       IFactory factory = objectFactory.CreateFactory(typeof 
(Order), Type.EmptyTypes );
+
+                       object obj = factory.CreateInstance(null);
+               }
+
+               [Test]
+               [ExpectedException(typeof(ProbeException))]
+               public void ProtectedConstructor()
+               {
+                       IObjectFactory objectFactory = new ObjectFactory(true);
+
+                       IFactory factory = objectFactory.CreateFactory(typeof 
(Item), Type.EmptyTypes );
+
+                       object obj = factory.CreateInstance(null);
+
+                       Assert.IsTrue(obj is Item);
+               }
 
                [Test]
-               public void DynamicFactoryWithConstructor0()
+               public void ClassWithMultipleConstructor()
+               {
+                       IObjectFactory objectFactory = new ObjectFactory(true);
+
+                       Type[] types = {typeof(string)};
+                       IFactory factory0 = objectFactory.CreateFactory(typeof 
(Account), types );
+
+                       object[] parameters = {"gilles"};
+                       object obj0 = factory0.CreateInstance(parameters);
+
+                       Assert.IsTrue(obj0 is Account);
+                       Account account = (Account)obj0;
+                       Assert.AreEqual("gilles", account.Test);
+
+                       IFactory factory1 = objectFactory.CreateFactory(typeof 
(Account), Type.EmptyTypes );
+
+                       object obj1 = factory1.CreateInstance(parameters);
+
+                       Assert.IsTrue(obj1 is Account);
+               }
+
+               [Test]
+               public void StringConstructor()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 
@@ -27,7 +73,7 @@
                }
 
                [Test]
-               public void DynamicFactoryWithConstructor1()
+               public void MultipleParamConstructor1()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 
@@ -44,7 +90,7 @@
                }
 
                [Test]
-               public void DynamicFactoryWithConstructor2()
+               public void IntConstructor()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 
@@ -61,7 +107,7 @@
                }
 
                [Test]
-               public void DynamicFactoryWithConstructor3()
+               public void EnumConstructorEnum()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 
@@ -78,7 +124,7 @@
                }
 
                [Test]
-               public void DynamicFactoryWithConstructor4()
+               public void ClassConstructor()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 
@@ -98,7 +144,7 @@
                }
 
                [Test]
-               public void DynamicFactoryWithConstructor5()
+               public void DateTimeConstructor()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 
@@ -115,8 +161,33 @@
                        Assert.AreEqual( date, account.Date);
                }
 
+        [Test]
+        public void ArrayParamConstructor()
+        {
+            IObjectFactory objectFactory = new ObjectFactory(true);
+
+            Type[] types = { typeof(int[]) };
+            IFactory factory = objectFactory.CreateFactory(typeof(Account), 
types);
+
+            object[] parameters = new object[1];
+
+            int[] ids = new int[2];
+            ids[0] = 1;
+            ids[1] = 2;
+
+            parameters[0] = ids;
+            object obj = factory.CreateInstance(parameters);
+
+            Assert.IsTrue(obj is Account);
+            Account account = (Account)obj;
+
+            Assert.AreEqual(2, account.Ids.Length);
+            Assert.AreEqual(1, account.Ids[0]);
+            Assert.AreEqual(2, account.Ids[1]);
+        }
+
                [Test]
-               public void DynamicFactoryWithConstructor6()
+               public void MultipleParamConstructor0()
                {
                        IObjectFactory objectFactory = new ObjectFactory(true);
 

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/FactoryBuilder.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/FactoryBuilder.cs?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/FactoryBuilder.cs 
(original)
+++ ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/FactoryBuilder.cs 
Tue Apr 25 10:40:27 2006
@@ -37,6 +37,7 @@
        public class FactoryBuilder
        {
                private ModuleBuilder _moduleBuilder = null;
+               private const BindingFlags VISIBILITY = BindingFlags.Instance | 
BindingFlags.Public | BindingFlags.NonPublic;
 
                /// <summary>
                /// constructor
@@ -77,7 +78,7 @@
                        string typesName = string.Empty;
                        for(int i = 0; i < types.Length; i++)
                        {
-                               typesName += types[i].Name;
+                               typesName += 
types[i].Name.Replace("[]",string.Empty)+i.ToString();
                        }
                        TypeBuilder typeBuilder = 
_moduleBuilder.DefineType("EmitFactoryFor" + typeToCreate.Name + typesName, 
TypeAttributes.Public);
                        typeBuilder.AddInterfaceImplementation(typeof 
(IFactory));
@@ -95,7 +96,7 @@
                        ILGenerator il = meth.GetILGenerator();
 
                        // Add test if contructeur not public
-                       ConstructorInfo ctor = 
typeToCreate.GetConstructor(argumentTypes);
+                       ConstructorInfo ctor = 
typeToCreate.GetConstructor(VISIBILITY, null, argumentTypes, null);
                        if (!ctor.IsPublic)
                        {
                                throw new ProbeException(

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitFieldAccessor.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitFieldAccessor.cs?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitFieldAccessor.cs
 (original)
+++ 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitFieldAccessor.cs
 Tue Apr 25 10:40:27 2006
@@ -55,7 +55,7 @@
                        // Make sure the field exists
                        if(fieldInfo == null)
                        {
-                               throw new MissingMethodException(
+                               throw new NotSupportedException(
                                        string.Format("Field \"{0}\" does not 
exist for type "
                                        + "{1}.", fieldName, targetObjectType));
                        }

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitPropertyAccessor.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitPropertyAccessor.cs?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitPropertyAccessor.cs
 (original)
+++ 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/EmitPropertyAccessor.cs
 Tue Apr 25 10:40:27 2006
@@ -57,7 +57,7 @@
                #endregion
 
                /// <summary>
-               /// Creates a new IL property accessor.
+               /// Initializes the property and generates the implementation 
for getter and setter methods.
                /// </summary>
                /// <param name="targetObjectType">Target object type.</param>
                /// <param name="propertyName">Property name.</param>
@@ -75,7 +75,7 @@
                        // Make sure the property exists
                        if(propertyInfo == null)
                        {
-                               throw new MissingMethodException(
+                               throw new NotSupportedException(
                                        string.Format("Property \"{0}\" does 
not exist for type "
                                        + "{1}.", propertyName, targetType));
                        }
@@ -104,7 +104,7 @@
                        }
                        else
                        {
-                               throw new MissingMethodException(
+                               throw new NotSupportedException(
                                        string.Format("Property \"{0}\" on type 
"
                                        + "{1} doesn't have a get method.", 
memberName, targetType));
                        }
@@ -131,7 +131,7 @@
                        }
                        else
                        {
-                               throw new MissingMethodException(
+                               throw new NotSupportedException(
                                        string.Format("Property \"{0}\" on type 
"
                                        + "{1} doesn't have a set method.", 
memberName, targetType));
                        }

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/IMemberAccessor.cs
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/IMemberAccessor.cs?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/IMemberAccessor.cs
 (original)
+++ 
ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities/Objects/Members/IMemberAccessor.cs
 Tue Apr 25 10:40:27 2006
@@ -28,7 +28,10 @@
 namespace IBatisNet.Common.Utilities.Objects.Members
 {
        /// <summary>
-       /// The IMemberAccessor interface defines a field/property accessor.
+       /// The IMemberAccessor interface defines a field/property accessor and
+       /// provides <c>Reflection.Emit</c>-generated <see cref="Get"/> and 
<see cref="Set"/> 
+       /// implementations for drastically improved performance over default 
late-bind 
+       /// invoke.
        /// </summary>
        public interface IMemberAccessor
        {

Modified: 
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/providers.config
URL: 
http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/providers.config?rev=396940&r1=396939&r2=396940&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/providers.config 
(original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/bin/Debug/providers.config 
Tue Apr 25 10:40:27 2006
@@ -19,6 +19,7 @@
          useParameterPrefixInSql="true" 
          useParameterPrefixInParameter="true" 
          parameterPrefix="@"
+    allowMARS="false"
   />
 <provider 
          name="sqlServer1.1" 
@@ -37,6 +38,7 @@
          useParameterPrefixInSql="true" 
          useParameterPrefixInParameter="true" 
          parameterPrefix="@"
+    allowMARS="false"
   />
 <provider
     name="sqlServer2.0"
@@ -54,7 +56,26 @@
     useParameterPrefixInSql = "true"
     useParameterPrefixInParameter = "true" 
     parameterPrefix="@"
+    allowMARS="false"
     />
+  <provider
+     name="sqlServer20005"
+     enabled="false"
+     description="Microsoft SQL Server, provider V2.0.0.0 in framework .NET 
V2.0" 
+     assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089" 
+     connectionClass="System.Data.SqlClient.SqlConnection" 
+     commandClass="System.Data.SqlClient.SqlCommand"
+     parameterClass="System.Data.SqlClient.SqlParameter"
+     parameterDbTypeClass="System.Data.SqlDbType"
+     parameterDbTypeProperty="SqlDbType"
+     dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
+     commandBuilderClass=" System.Data.SqlClient.SqlCommandBuilder"
+     usePositionalParameters = "false"
+     useParameterPrefixInSql = "true"
+     useParameterPrefixInParameter = "true" 
+     parameterPrefix="@"
+     allowMARS="true"
+    /> 
 <provider name="OleDb1.1" 
          description="OleDb, provider V1.0.5000.0 in framework .NET V1.1" 
          enabled="true"
@@ -70,39 +91,42 @@
          useParameterPrefixInSql="false" 
          useParameterPrefixInParameter="false" 
          parameterPrefix=""
+    allowMARS="false"    
     />
   <provider name="OleDb2.0" 
-      description="OleDb, provider V2.0.0.0 in framework .NET V2" 
-      enabled="false"
-      assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089" 
-      connectionClass="System.Data.OleDb.OleDbConnection" 
-      commandClass="System.Data.OleDb.OleDbCommand" 
-      parameterClass="System.Data.OleDb.OleDbParameter" 
-      parameterDbTypeClass="System.Data.OleDb.OleDbType" 
-      parameterDbTypeProperty="OleDbType" 
-      dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
-      commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
-      usePositionalParameters="true" 
-      useParameterPrefixInSql="false" 
-      useParameterPrefixInParameter="false" 
-      parameterPrefix=""
+    description="OleDb, provider V2.0.0.0 in framework .NET V2" 
+    enabled="false"
+    assemblyName="System.Data, Version=2.0.0.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.OleDb.OleDbConnection" 
+    commandClass="System.Data.OleDb.OleDbCommand" 
+    parameterClass="System.Data.OleDb.OleDbParameter" 
+    parameterDbTypeClass="System.Data.OleDb.OleDbType" 
+    parameterDbTypeProperty="OleDbType" 
+    dataAdapterClass="System.Data.OleDb.OleDbDataAdapter" 
+    commandBuilderClass="System.Data.OleDb.OleDbCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix=""
+    allowMARS="false"
     />  
   <provider 
-      name="Odbc1.1" 
-      description="Odbc, provider V1.0.5000.0 in framework .NET V1.1" 
-      enabled="true" 
-      assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089" 
-      connectionClass="System.Data.Odbc.OdbcConnection" 
-      commandClass="System.Data.Odbc.OdbcCommand" 
-      parameterClass="System.Data.Odbc.OdbcParameter" 
-      parameterDbTypeClass="System.Data.Odbc.OdbcType" 
-      parameterDbTypeProperty="OdbcType" 
-      dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
-      commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
-      usePositionalParameters="true" 
-      useParameterPrefixInSql="false" 
-      useParameterPrefixInParameter="false" 
-      parameterPrefix="@"
+    name="Odbc1.1" 
+    description="Odbc, provider V1.0.5000.0 in framework .NET V1.1" 
+    enabled="true" 
+    assemblyName="System.Data, Version=1.0.5000.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089" 
+    connectionClass="System.Data.Odbc.OdbcConnection" 
+    commandClass="System.Data.Odbc.OdbcCommand" 
+    parameterClass="System.Data.Odbc.OdbcParameter" 
+    parameterDbTypeClass="System.Data.Odbc.OdbcType" 
+    parameterDbTypeProperty="OdbcType" 
+    dataAdapterClass="System.Data.Odbc.OdbcDataAdapter" 
+    commandBuilderClass="System.Data.Odbc.OdbcCommandBuilder" 
+    usePositionalParameters="true" 
+    useParameterPrefixInSql="false" 
+    useParameterPrefixInParameter="false" 
+    parameterPrefix="@"
+    allowMARS="false"    
     />
   <provider 
     name="Odbc2.0" 
@@ -120,6 +144,7 @@
     useParameterPrefixInSql="false" 
     useParameterPrefixInParameter="false" 
     parameterPrefix="@"
+    allowMARS="false"    
   />  
   <provider 
     name="oracle9.2" 
@@ -137,6 +162,7 @@
     useParameterPrefixInParameter="false" 
     parameterPrefix=":" 
     useDeriveParameters="false"
+    allowMARS="false"    
   />
   <provider 
     name="oracle10.1" 
@@ -154,6 +180,7 @@
     useParameterPrefixInParameter="true" 
     parameterPrefix=":" 
     useDeriveParameters="false"
+    allowMARS="false"    
   />
   <provider 
     name="oracleClient1.0" 
@@ -170,6 +197,7 @@
     useParameterPrefixInSql="true" 
     useParameterPrefixInParameter="false" 
     parameterPrefix=":"
+    allowMARS="false"    
   />
   <provider 
     name="ByteFx" 
@@ -186,6 +214,7 @@
     useParameterPrefixInSql="true" 
     useParameterPrefixInParameter="true" 
     parameterPrefix="@"
+    allowMARS="false"    
   />
   <provider 
     name="MySql" 
@@ -202,6 +231,7 @@
     useParameterPrefixInSql="true" 
     useParameterPrefixInParameter="true" 
     parameterPrefix="?"
+    allowMARS="false"    
   />
   <provider name="SQLite3"
     description="SQLite, SQLite.NET provider V0.21.1869.3794"
@@ -220,6 +250,7 @@
     parameterPrefix="@"
     setDbParameterPrecision="false"
     setDbParameterScale="false"
+    allowMARS="false"    
   />
   <provider
     name="Firebird1.7" 
@@ -236,6 +267,7 @@
     useParameterPrefixInSql="true" 
     useParameterPrefixInParameter="true" 
     parameterPrefix="@"
+    allowMARS="false"    
   />
   <provider
     name="PostgreSql0.98.2.0" 
@@ -253,6 +285,7 @@
     useParameterPrefixInSql="true" 
     useParameterPrefixInParameter="true" 
     parameterPrefix=":"
+    allowMARS="true"    
   />   
   <provider 
     name="iDb2.10" 
@@ -269,6 +302,7 @@
     useParameterPrefixInSql="false" 
     useParameterPrefixInParameter="false" 
     parameterPrefix=""
+    allowMARS="false"    
   />
   <provider 
     name="Informix" 
@@ -286,5 +320,6 @@
     useParameterPrefixInSql = "false" 
     useParameterPrefixInParameter = "false" 
     useDeriveParameters="false" 
+    allowMARS="false"    
        />
 </providers>


Reply via email to