Modified:
trunk/mysqlclient/Connection.cs
trunk/mysqlclient/MySqlClientFactory.cs
trunk/mysqlclient/MySqlConnectionStringBuilder.cs
trunk/mysqlclient/command.cs
trunk/mysqlclient/datareader.cs
trunk/mysqlclient/docs/MySqlDataReader.xml
trunk/mysqlclient/parameter.cs
trunk/mysqlclient/parameter_collection.cs
Log:
added proper comments to many of the public methods that did not have them.
Modified: trunk/mysqlclient/Connection.cs
===================================================================
--- trunk/mysqlclient/Connection.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/Connection.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -27,6 +27,7 @@
using System.Globalization;
using MySql.Data.Common;
using System.Diagnostics;
+using System.Windows.Forms;
namespace MySql.Data.MySqlClient
{
@@ -248,6 +249,12 @@
#region Transactions
#if !MONO
+ /// <summary>
+ /// Enlists in the specified transaction.
+ /// </summary>
+ /// <param name="transaction">
+ /// A reference to an existing <see cref="Transaction"/> in which to enlist.
+ /// </param>
public override void EnlistTransaction(System.Transactions.Transaction transaction)
{
if (currentTransaction != null)
@@ -481,20 +488,45 @@
#region GetSchema Support
+ /// <summary>
+ /// Returns schema information for the data source of this <see cref="DbConnection"/>.
+ /// </summary>
+ /// <returns>A <see cref="DataTable"/> that contains schema information. </returns>
public override DataTable GetSchema()
{
return GetSchema(null);
}
+ /// <summary>
+ /// Returns schema information for the data source of this
+ /// <see cref="DbConnection"/> using the specified string for the schema name.
+ /// </summary>
+ /// <param name="collectionName">Specifies the name of the schema to return. </param>
+ /// <returns>A <see cref="DataTable"/> that contains schema information. </returns>
public override DataTable GetSchema(string collectionName)
{
if (collectionName == null)
collectionName = SchemaProvider.MetaCollection;
+
return schemaProvider.GetSchema(collectionName, null);
}
+ /// <summary>
+ /// Returns schema information for the data source of this <see cref="DbConnection"/>
+ /// using the specified string for the schema name and the specified string array
+ /// for the restriction values.
+ /// </summary>
+ /// <param name="collectionName">Specifies the name of the schema to return.</param>
+ /// <param name="restrictionValues">Specifies a set of restriction values for the requested schema.</param>
+ /// <returns>A <see cref="DataTable"/> that contains schema information.</returns>
public override DataTable GetSchema(string collectionName, string[] restrictionValues)
{
+ string msg = "collection = " + collectionName + " with rest = ";
+ foreach (string s in restrictionValues)
+ {
+ msg += "r = " + s;
+ }
+
if (collectionName == null)
collectionName = SchemaProvider.MetaCollection;
return schemaProvider.GetSchema(collectionName, restrictionValues);
Modified: trunk/mysqlclient/MySqlClientFactory.cs
===================================================================
--- trunk/mysqlclient/MySqlClientFactory.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/MySqlClientFactory.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -28,6 +28,10 @@
/// </summary>
public sealed class MySqlClientFactory : DbProviderFactory
{
+ /// <summary>
+ /// Gets an instance of the <see cref="MySqlClientFactory"/>.
+ /// This can be used to retrieve strongly typed data objects.
+ /// </summary>
public static readonly MySqlClientFactory Instance;
static MySqlClientFactory()
@@ -35,36 +39,64 @@
Instance = new MySqlClientFactory();
}
+ /// <summary>
+ /// Returns a strongly typed <see cref="DbCommandBuilder"/> instance.
+ /// </summary>
+ /// <returns>A new strongly typed instance of <b>DbCommandBuilder</b>.</returns>
public override DbCommandBuilder CreateCommandBuilder()
{
return new MySqlCommandBuilder();
}
+ /// <summary>
+ /// Returns a strongly typed <see cref="DbCommand"/> instance.
+ /// </summary>
+ /// <returns>A new strongly typed instance of <b>DbCommand</b>.</returns>
public override DbCommand CreateCommand()
{
return new MySqlCommand();
}
+ /// <summary>
+ /// Returns a strongly typed <see cref="DbConnection"/> instance.
+ /// </summary>
+ /// <returns>A new strongly typed instance of <b>DbConnection</b>.</returns>
public override DbConnection CreateConnection()
{
return new MySqlConnection();
}
+ /// <summary>
+ /// Returns a strongly typed <see cref="DbDataAdapter"/> instance.
+ /// </summary>
+ /// <returns>A new strongly typed instance of <b>DbDataAdapter</b>. </returns>
public override DbDataAdapter CreateDataAdapter()
{
return new MySqlDataAdapter();
}
+ /// <summary>
+ /// Returns a strongly typed <see cref="DbParameter"/> instance.
+ /// </summary>
+ /// <returns>A new strongly typed instance of <b>DbParameter</b>.</returns>
public override DbParameter CreateParameter()
{
return new MySqlParameter();
}
+ /// <summary>
+ /// Returns a strongly typed <see cref="DbConnectionStringBuilder"/> instance.
+ /// </summary>
+ /// <returns>A new strongly typed instance of <b>DbConnectionStringBuilder</b>.</returns>
public override DbConnectionStringBuilder CreateConnectionStringBuilder()
{
return new MySqlConnectionStringBuilder();
}
+ /// <summary>
+ /// Returns true if a <b>MySqlDataSourceEnumerator</b> can be created;
+ /// otherwise false.
+ /// </summary>
public override bool CanCreateDataSourceEnumerator
{
get { return false; }
Modified: trunk/mysqlclient/MySqlConnectionStringBuilder.cs
===================================================================
--- trunk/mysqlclient/MySqlConnectionStringBuilder.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/MySqlConnectionStringBuilder.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -23,6 +23,7 @@
using System.Data.Common;
using MySql.Data.Common;
using System.Globalization;
+using System.Collections.Generic;
using System.Text;
namespace MySql.Data.MySqlClient
@@ -45,23 +46,37 @@
bool useUsageAdvisor, useSSL;
bool ignorePrepare;
+ /// <summary>
+ /// Initializes a new instance of the <see cref="MySqlConnectionStringBuilder"/> class.
+ /// </summary>
public MySqlConnectionStringBuilder()
{
persistConnString = new StringBuilder();
Clear();
}
- public MySqlConnectionStringBuilder(string connstr)
+ /// <summary>
+ /// Initializes a new instance of the <see cref="MySqlConnectionStringBuilder"/> class.
+ /// The provided connection string provides the data for the instance's internal
+ /// connection information.
+ /// </summary>
+ /// <param name="connectionString">The basis for the object's internal connection
+ /// information. Parsed into name/value pairs. Invalid key names raise
+ /// <see cref="KeyNotFoundException"/>.
+ /// </param>
+ public MySqlConnectionStringBuilder(string connectionString)
: base()
{
- originalConnectionString = connstr;
+ originalConnectionString = connectionString;
persistConnString = new StringBuilder();
- ConnectionString = connstr;
+ ConnectionString = connectionString;
}
#region Server Properties
-
+ /// <summary>
+ /// Gets or sets the name of the server.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[Description("Server to connect to")]
@@ -72,6 +87,10 @@
set { CheckNullAndSet("Server", value); server = value; }
}
+ /// <summary>
+ /// Gets or sets the name of the database the connection should
+ /// initially connect to.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[Description("Database to use initially")]
@@ -82,6 +101,10 @@
set { CheckNullAndSet("Database", value); database = value; }
}
+ /// <summary>
+ /// Gets or sets the protocol that should be used for communicating
+ /// with MySQL.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Connection Protocol")]
@@ -94,6 +117,10 @@
set { base["Protocol"] = value; protocol = value; }
}
+ /// <summary>
+ /// Gets or sets the name of the named pipe that should be used
+ /// for communicating with MySQL.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Pipe Name")]
@@ -105,6 +132,10 @@
set { CheckNullAndSet("Pipe Name", value); pipeName = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value that indicates whether this connection
+ /// should use compression.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Use Compression")]
@@ -117,6 +148,10 @@
set { base["compress"] = value; compress = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value that indicates whether this connection will allow
+ /// commands to send multiple SQL statements in one execution.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Allow Batch")]
@@ -129,6 +164,9 @@
set { base["allow batch"] = value; allowBatch = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value that indicates whether logging is enabled.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[Description("Enables output of diagnostic messages")]
@@ -140,6 +178,10 @@
set { base["logging"] = value; logging = value; }
}
+ /// <summary>
+ /// Gets or sets the base name of the shared memory objects used to
+ /// communicate with MySQL when the shared memory protocol is being used.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Shared Memory Name")]
@@ -152,6 +194,10 @@
set { CheckNullAndSet("Shared Memory Name", value); sharedMemName = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value that indicates whether this connection uses
+ /// the old style (@) parameter markers or the new (?) style.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Use Old Syntax")]
@@ -164,6 +210,12 @@
set { base["Old Syntax"] = value; oldSyntax = value; }
}
+ /// <summary>
+ /// Gets or sets the driver type that should be used for this connection.
+ /// </summary>
+ /// <remarks>
+ /// There is only one valid value for this setting currently.
+ /// </remarks>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Driver Type")]
@@ -182,6 +234,10 @@
set { CheckNullAndSet("Option File", value); optionFile = value; }
}
+ /// <summary>
+ /// Gets or sets the port number that is used when the socket
+ /// protocol is being used.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[Description("Port to use for TCP/IP connections")]
@@ -193,6 +249,9 @@
set { base["Port"] = value; port = value; }
}
+ /// <summary>
+ /// Gets or sets the connection timeout.
+ /// </summary>
#if !CF && !MONO
[Category("Connection")]
[DisplayName("Connect Timeout")]
@@ -210,6 +269,9 @@
#region Authentication Properties
+ /// <summary>
+ /// Gets or sets the user id that should be used to connect with.
+ /// </summary>
#if !CF && !MONO
[Category("Security")]
[DisplayName("User ID")]
@@ -221,6 +283,9 @@
set { CheckNullAndSet("User Id", value); userId = value; }
}
+ /// <summary>
+ /// Gets or sets the password that should be used to connect with.
+ /// </summary>
#if !CF && !MONO
[Category("Security")]
[Description("Indicates the password to be used when connecting to the data source.")]
@@ -231,6 +296,10 @@
set { CheckNullAndSet("Password", value); password = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value that indicates if the password should be persisted
+ /// in the connection string.
+ /// </summary>
#if !CF && !MONO
[Category("Security")]
[DisplayName("Persist Security Info")]
@@ -259,6 +328,9 @@
#region Other Properties
+ /// <summary>
+ /// Gets or sets a boolean value that indicates if zero date time values are supported.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[DisplayName("Allow Zero Datetime")]
@@ -271,6 +343,10 @@
set { base["Allow Zero DateTime"] = value; allowZeroDatetime = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value indicating if zero datetime values should be
+ /// converted to DateTime.MinValue.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[DisplayName("Convert Zero Datetime")]
@@ -283,6 +359,9 @@
set { base["Convert Zero DateTime"] = value; convertZeroDatetime = value; }
}
+ /// <summary>
+ /// Gets or sets the character set that should be used for sending queries to the server.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[Description("Character set this connection should use")]
@@ -293,6 +372,9 @@
set { CheckNullAndSet("Character Set", value); charSet = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value indicating if the Usage Advisor should be enabled.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[DisplayName("Use Usage Advisor")]
@@ -305,6 +387,9 @@
set { base["Use Usage Advisor"] = value; useUsageAdvisor = value; }
}
+ /// <summary>
+ /// Gets or sets the size of the stored procedure cache.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[DisplayName("Procedure Cache Size")]
@@ -318,6 +403,9 @@
set { base["Procedure Cache Size"] = value; procCacheSize = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value indicating if the permon hooks should be enabled.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[DisplayName("Use Performance Monitor")]
@@ -330,6 +418,9 @@
set { base["Use Performance Monitor"] = value; usePerfMon = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value indicating if calls to Prepare() should be ignored.
+ /// </summary>
#if !CF && !MONO
[Category("Advanced")]
[DisplayName("Ignore Prepare")]
@@ -346,6 +437,9 @@
#region Pooling Properties
+ /// <summary>
+ /// Gets or sets the lifetime of a pooled connection.
+ /// </summary>
#if !CF && !MONO
[Category("Pooling")]
[DisplayName("Load Balance Timeout")]
@@ -359,6 +453,9 @@
set { base["Connection Lifetime"] = value; connectionLifetime = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value indicating if connection pooling is enabled.
+ /// </summary>
#if !CF && !MONO
[Category("Pooling")]
[Description("When true, the connection object is drawn from the appropriate " +
@@ -371,6 +468,9 @@
set { base["Pooling"] = value; pooling = value; }
}
+ /// <summary>
+ /// Gets the minimum connection pool size.
+ /// </summary>
#if !CF && !MONO
[Category("Pooling")]
[DisplayName("Min Pool Size")]
@@ -383,6 +483,9 @@
set { base["Minimum Pool Size"] = value; minPoolSize = value; }
}
+ /// <summary>
+ /// Gets or sets the maximum connection pool setting.
+ /// </summary>
#if !CF && !MONO
[Category("Pooling")]
[DisplayName("Max Pool Size")]
@@ -395,6 +498,10 @@
set { base["Maximum Pool Size"] = value; maxPoolSize = value; }
}
+ /// <summary>
+ /// Gets or sets a boolean value indicating if the connection should be reset when retrieved
+ /// from the pool.
+ /// </summary>
#if !CF && !MONO
[Category("Pooling")]
[DisplayName("Connection Reset")]
@@ -540,6 +647,9 @@
return connStr.Remove(connStr.Length - 1, 1);
}
+ /// <summary>
+ /// Clears the contents of the <see cref="MySqlConnectionStringBuilder"/> instance.
+ /// </summary>
public override void Clear()
{
base.Clear();
@@ -711,6 +821,12 @@
}
}
+ /// <summary>
+ /// Gets or sets the value associated with the specified key. In C#, this property
+ /// is the indexer.
+ /// </summary>
+ /// <param name="key">The key of the item to get or set.</param>
+ /// <returns>The value associated with the specified key. </returns>
public override object this[string key]
{
get
Modified: trunk/mysqlclient/command.cs
===================================================================
--- trunk/mysqlclient/command.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/command.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -476,11 +476,31 @@
return sb.ToString(start, end - start + 1);
}
+ /// <summary>
+ /// Initiates the asynchronous execution of the SQL statement or stored procedure
+ /// that is described by this <see cref="MySqlCommand"/>, and retrieves one or more
+ /// result sets from the server.
+ /// </summary>
+ /// <returns>An <see cref="IAsyncResult"/> that can be used to poll, wait for results,
+ /// or both; this value is also needed when invoking EndExecuteReader,
+ /// which returns a <see cref="MySqlDataReader"/> instance that can be used to retrieve
+ /// the returned rows. </returns>
public IAsyncResult BeginExecuteReader()
{
return BeginExecuteReader(CommandBehavior.Default);
}
+ /// <summary>
+ /// Initiates the asynchronous execution of the SQL statement or stored procedure
+ /// that is described by this <see cref="MySqlCommand"/> using one of the
+ /// <b>CommandBehavior</b> values.
+ /// </summary>
+ /// <param name="behavior">One of the <see cref="CommandBehavior"/> values, indicating
+ /// options for statement execution and data retrieval.</param>
+ /// <returns>An <see cref="IAsyncResult"/> that can be used to poll, wait for results,
+ /// or both; this value is also needed when invoking EndExecuteReader,
+ /// which returns a <see cref="MySqlDataReader"/> instance that can be used to retrieve
+ /// the returned rows. </returns>
public IAsyncResult BeginExecuteReader(CommandBehavior behavior)
{
AsyncExecuteReaderDelegate del = new AsyncExecuteReaderDelegate(ExecuteReader);
@@ -488,12 +508,33 @@
return asyncResult;
}
+ /// <summary>
+ /// Finishes asynchronous execution of a SQL statement, returning the requested
+ /// <see cref="MySqlDataReader"/>.
+ /// </summary>
+ /// <param name="result">The <see cref="IAsyncResult"/> returned by the call to
+ /// <see cref="BeginExecuteReader()"/>.</param>
+ /// <returns>A <b>MySqlDataReader</b> object that can be used to retrieve the requested rows. </returns>
public MySqlDataReader EndExecuteReader(IAsyncResult result)
{
result.AsyncWaitHandle.WaitOne();
return connection.Reader;
}
+ /// <summary>
+ /// Initiates the asynchronous execution of the SQL statement or stored procedure
+ /// that is described by this <see cref="MySqlCommand"/>.
+ /// </summary>
+ /// <param name="callback">
+ /// An <see cref="AsyncCallback"/> delegate that is invoked when the command's
+ /// execution has completed. Pass a null reference (<b>Nothing</b> in Visual Basic)
+ /// to indicate that no callback is required.</param>
+ /// <param name="stateObject">A user-defined state object that is passed to the
+ /// callback procedure. Retrieve this object from within the callback procedure
+ /// using the <see cref="IAsyncResult.AsyncState"/> property.</param>
+ /// <returns>An <see cref="IAsyncResult"/> that can be used to poll or wait for results,
+ /// or both; this value is also needed when invoking <see cref="EndExecuteNonQuery"/>,
+ /// which returns the number of affected rows. </returns>
public IAsyncResult BeginExecuteNonQuery(AsyncCallback callback, object stateObject)
{
AsyncExecuteNonQueryDelegate del =
@@ -502,6 +543,13 @@
return asyncResult;
}
+ /// <summary>
+ /// Initiates the asynchronous execution of the SQL statement or stored procedure
+ /// that is described by this <see cref="MySqlCommand"/>.
+ /// </summary>
+ /// <returns>An <see cref="IAsyncResult"/> that can be used to poll or wait for results,
+ /// or both; this value is also needed when invoking <see cref="EndExecuteNonQuery"/>,
+ /// which returns the number of affected rows. </returns>
public IAsyncResult BeginExecuteNonQuery()
{
AsyncExecuteNonQueryDelegate del =
@@ -510,9 +558,15 @@
return asyncResult;
}
- public int EndExecuteNonQuery(IAsyncResult result)
+ /// <summary>
+ /// Finishes asynchronous execution of a SQL statement.
+ /// </summary>
+ /// <param name="asyncResult">The <see cref="IAsyncResult"/> returned by the call
+ /// to <see cref="BeginExecuteNonQuery()"/>.</param>
+ /// <returns></returns>
+ public int EndExecuteNonQuery(IAsyncResult asyncResult)
{
- result.AsyncWaitHandle.WaitOne();
+ asyncResult.AsyncWaitHandle.WaitOne();
return (int)updatedRowCount;
}
@@ -603,6 +657,9 @@
#endregion
+ /// <summary>
+ /// Gets or sets a value indicating whether the command object should be visible in a Windows Form Designer control.
+ /// </summary>
[Browsable(false)]
public override bool DesignTimeVisible
{
@@ -616,6 +673,10 @@
}
}
+ /// <summary>
+ /// Gets or sets how command results are applied to the DataRow when used by the
+ /// Update method of the DbDataAdapter.
+ /// </summary>
public override UpdateRowSource UpdatedRowSource
{
get
Modified: trunk/mysqlclient/datareader.cs
===================================================================
--- trunk/mysqlclient/datareader.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/datareader.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -192,6 +192,11 @@
#region TypeSafe Accessors
+ /// <summary>
+ /// Gets the value of the specified column as a Boolean.
+ /// </summary>
+ /// <param name="name"></param>
+ /// <returns></returns>
public bool GetBoolean(string name)
{
return GetBoolean(GetOrdinal(name));
@@ -207,6 +212,11 @@
return Convert.ToBoolean(GetValue(i));
}
+ /// <summary>
+ /// Gets the value of the specified column as a byte.
+ /// </summary>
+ /// <param name="name"></param>
+ /// <returns></returns>
public byte GetByte(string name)
{
return GetByte(GetOrdinal(name));
@@ -271,6 +281,11 @@
return length;
}
+ /// <summary>
+ /// Gets the value of the specified column as a single character.
+ /// </summary>
+ /// <param name="name"></param>
+ /// <returns></returns>
public char GetChar(string name)
{
return GetChar(GetOrdinal(name));
@@ -332,26 +347,28 @@
return values[i].MySqlTypeName;
}
- public MySqlDateTime GetMySqlDateTime(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetMySqlDateTime/*'/>
+ public MySqlDateTime GetMySqlDateTime(string column)
{
- return GetMySqlDateTime(GetOrdinal(name));
+ return GetMySqlDateTime(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetMySqlDateTime/*'/>
- public MySqlDateTime GetMySqlDateTime(int index)
+ public MySqlDateTime GetMySqlDateTime(int column)
{
- return (MySqlDateTime)GetFieldValue(index, true);
+ return (MySqlDateTime)GetFieldValue(column, true);
}
- public DateTime GetDateTime(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetDateTime/*'/>
+ public DateTime GetDateTime(string column)
{
- return GetDateTime(GetOrdinal(name));
+ return GetDateTime(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetDateTime/*'/>
- public override DateTime GetDateTime(int index)
+ public override DateTime GetDateTime(int column)
{
- IMySqlValue val = GetFieldValue(index, true);
+ IMySqlValue val = GetFieldValue(column, true);
MySqlDateTime dt;
// we need to do this because functions like date_add return string
@@ -369,29 +386,31 @@
return dt.GetDateTime();
}
- public Decimal GetDecimal(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetDecimal/*'/>
+ public Decimal GetDecimal(string column)
{
- return GetDecimal(GetOrdinal(name));
+ return GetDecimal(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetDecimal/*'/>
- public override Decimal GetDecimal(int index)
+ public override Decimal GetDecimal(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlDecimal)
return ((MySqlDecimal)v).Value;
return Convert.ToDecimal(v.Value);
}
- public double GetDouble(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetDouble/*'/>
+ public double GetDouble(string column)
{
- return GetDouble(GetOrdinal(name));
+ return GetDouble(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetDouble/*'/>
- public override double GetDouble(int index)
+ public override double GetDouble(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlDouble)
return ((MySqlDouble)v).Value;
return Convert.ToDouble(v.Value);
@@ -416,79 +435,84 @@
return values[i].SystemType;
}
- public float GetFloat(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetFloat/*'/>
+ public float GetFloat(string column)
{
- return GetFloat(GetOrdinal(name));
+ return GetFloat(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetFloat/*'/>
- public override float GetFloat(int index)
+ public override float GetFloat(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlSingle)
return ((MySqlSingle)v).Value;
return Convert.ToSingle(v.Value);
}
- public Guid GetGuid(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetGuid/*'/>
+ public Guid GetGuid(string column)
{
- return GetGuid(GetOrdinal(name));
+ return GetGuid(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetGuid/*'/>
- public override Guid GetGuid(int index)
+ public override Guid GetGuid(int column)
{
- return new Guid(GetString(index));
+ return new Guid(GetString(column));
}
- public Int16 GetInt16(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetInt16/*'/>
+ public Int16 GetInt16(string column)
{
- return GetInt16(GetOrdinal(name));
+ return GetInt16(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetInt16/*'/>
- public override Int16 GetInt16(int index)
+ public override Int16 GetInt16(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlInt16)
return ((MySqlInt16)v).Value;
connection.UsageAdvisor.Converting(command.CommandText,
- fields[index].ColumnName, v.MySqlTypeName, "Int16");
+ fields[column].ColumnName, v.MySqlTypeName, "Int16");
return ((IConvertible)v.Value).ToInt16(null);
}
- public Int32 GetInt32(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetInt32/*'/>
+ public Int32 GetInt32(string column)
{
- return GetInt32(GetOrdinal(name));
+ return GetInt32(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetInt32/*'/>
- public override Int32 GetInt32(int index)
+ public override Int32 GetInt32(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlInt32)
return ((MySqlInt32)v).Value;
connection.UsageAdvisor.Converting(command.CommandText,
- fields[index].ColumnName, v.MySqlTypeName, "Int32");
+ fields[column].ColumnName, v.MySqlTypeName, "Int32");
return ((IConvertible)v.Value).ToInt32(null);
}
- public Int64 GetInt64(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetInt64/*'/>
+ public Int64 GetInt64(string column)
{
- return GetInt64(GetOrdinal(name));
+ return GetInt64(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetInt64/*'/>
- public override Int64 GetInt64(int index)
+ public override Int64 GetInt64(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlInt64)
return ((MySqlInt64)v).Value;
connection.UsageAdvisor.Converting(command.CommandText,
- fields[index].ColumnName, v.MySqlTypeName, "Int64");
+ fields[column].ColumnName, v.MySqlTypeName, "Int64");
return ((IConvertible)v.Value).ToInt64(null);
}
@@ -595,34 +619,36 @@
return dataTableSchema;
}
- public string GetString(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetString/*'/>
+ public string GetString(string column)
{
- return GetString(GetOrdinal(name));
+ return GetString(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetString/*'/>
- public override String GetString(int index)
+ public override String GetString(int column)
{
- IMySqlValue val = GetFieldValue(index, true);
+ IMySqlValue val = GetFieldValue(column, true);
if (val is MySqlBinary)
{
byte[] v = ((MySqlBinary)val).Value;
- return fields[index].Encoding.GetString(v, 0, v.Length);
+ return fields[column].Encoding.GetString(v, 0, v.Length);
}
return val.Value.ToString();
}
- public TimeSpan GetTimeSpan(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetTimeSpan/*'/>
+ public TimeSpan GetTimeSpan(string column)
{
- return GetTimeSpan(GetOrdinal(name));
+ return GetTimeSpan(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetTimeSpan/*'/>
- public TimeSpan GetTimeSpan(int index)
+ public TimeSpan GetTimeSpan(int column)
{
- IMySqlValue val = GetFieldValue(index, true);
+ IMySqlValue val = GetFieldValue(column, true);
MySqlTimeSpan ts = (MySqlTimeSpan)val;
return ts.Value;
@@ -673,54 +699,57 @@
return numCols;
}
- public UInt16 GetUInt16(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetUInt16/*'/>
+ public UInt16 GetUInt16(string column)
{
- return GetUInt16(GetOrdinal(name));
+ return GetUInt16(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetUInt16/*'/>
- public UInt16 GetUInt16(int index)
+ public UInt16 GetUInt16(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlUInt16)
return ((MySqlUInt16)v).Value;
connection.UsageAdvisor.Converting(command.CommandText,
- fields[index].ColumnName, v.MySqlTypeName, "UInt16");
+ fields[column].ColumnName, v.MySqlTypeName, "UInt16");
return Convert.ToUInt16(v.Value);
}
- public UInt32 GetUInt32(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetUInt32/*'/>
+ public UInt32 GetUInt32(string column)
{
- return GetUInt32(GetOrdinal(name));
+ return GetUInt32(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetUInt32/*'/>
- public UInt32 GetUInt32(int index)
+ public UInt32 GetUInt32(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlUInt32)
return ((MySqlUInt32)v).Value;
connection.UsageAdvisor.Converting(command.CommandText,
- fields[index].ColumnName, v.MySqlTypeName, "UInt32");
+ fields[column].ColumnName, v.MySqlTypeName, "UInt32");
return Convert.ToUInt32(v.Value);
}
- public UInt64 GetUInt64(string name)
+ /// <include file='docs/MySqlDataReader.xml' path='docs/GetUInt64/*'/>
+ public UInt64 GetUInt64(string column)
{
- return GetUInt64(GetOrdinal(name));
+ return GetUInt64(GetOrdinal(column));
}
/// <include file='docs/MySqlDataReader.xml' path='docs/GetUInt64/*'/>
- public UInt64 GetUInt64(int index)
+ public UInt64 GetUInt64(int column)
{
- IMySqlValue v = GetFieldValue(index, true);
+ IMySqlValue v = GetFieldValue(column, true);
if (v is MySqlUInt64)
return ((MySqlUInt64)v).Value;
connection.UsageAdvisor.Converting(command.CommandText,
- fields[index].ColumnName, v.MySqlTypeName, "UInt64");
+ fields[column].ColumnName, v.MySqlTypeName, "UInt64");
return Convert.ToUInt64(v.Value);
}
@@ -922,6 +951,10 @@
#region IEnumerator
+ /// <summary>
+ /// Returns an <see cref="IEnumerator"/> that iterates through the <see cref="MySqlDataReader"/>.
+ /// </summary>
+ /// <returns></returns>
public override IEnumerator GetEnumerator()
{
return new DbEnumerator(this);
Modified: trunk/mysqlclient/docs/MySqlDataReader.xml
===================================================================
--- trunk/mysqlclient/docs/MySqlDataReader.xml 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/docs/MySqlDataReader.xml 2006-11-27 16:33:59 UTC (rev 465)
@@ -1,309 +1,313 @@
<docs>
-<ClassSummary>
- <summary>
- Provides a means of reading a forward-only stream of rows from a MySQL database. This class cannot be inherited.
- </summary>
- <remarks>
- <para>To create a <B>MySQLDataReader</B>, you must call the <see cref="MySqlCommand.ExecuteReader()"/>
- method of the <see cref="MySqlCommand"/> object, rather than directly using a constructor.
- </para>
- <para>While the <B>MySqlDataReader</B> is in use, the associated <see cref="MySqlConnection"/>
- is busy serving the <B>MySqlDataReader</B>, and no other operations can be performed
- on the <B>MySqlConnection</B> other than closing it. This is the case until the
- <see cref="MySqlDataReader.Close"/> method of the <B>MySqlDataReader</B> is called.
- </para>
- <para><see cref="MySqlDataReader.IsClosed"/> and <see cref="MySqlDataReader.RecordsAffected"/>
- are the only properties that you can call after the <B>MySqlDataReader</B> is
- closed. Though the <B>RecordsAffected</B> property may be accessed at any time
- while the <B>MySqlDataReader</B> exists, always call <B>Close</B> before returning
- the value of <B>RecordsAffected</B> to ensure an accurate return value.
- </para>
- <para>For optimal performance, <B>MySqlDataReader</B> avoids creating
- unnecessary objects or making unnecessary copies of data. As a result, multiple calls
- to methods such as <see cref="MySqlDataReader.GetValue"/> return a reference to the
- same object. Use caution if you are modifying the underlying value of the objects
- returned by methods such as <B>GetValue</B>.
- </para>
- </remarks>
+ <ClassSummary>
+ <summary>
+ Provides a means of reading a forward-only stream of rows from a MySQL database. This class cannot be inherited.
+ </summary>
+ <remarks>
+ <para>
+ To create a <B>MySQLDataReader</B>, you must call the <see cref="MySqlCommand.ExecuteReader()"/>
+ method of the <see cref="MySqlCommand"/> object, rather than directly using a constructor.
+ </para>
+ <para>
+ While the <B>MySqlDataReader</B> is in use, the associated <see cref="MySqlConnection"/>
+ is busy serving the <B>MySqlDataReader</B>, and no other operations can be performed
+ on the <B>MySqlConnection</B> other than closing it. This is the case until the
+ <see cref="MySqlDataReader.Close"/> method of the <B>MySqlDataReader</B> is called.
+ </para>
+ <para>
+ <see cref="MySqlDataReader.IsClosed"/> and <see cref="MySqlDataReader.RecordsAffected"/>
+ are the only properties that you can call after the <B>MySqlDataReader</B> is
+ closed. Though the <B>RecordsAffected</B> property may be accessed at any time
+ while the <B>MySqlDataReader</B> exists, always call <B>Close</B> before returning
+ the value of <B>RecordsAffected</B> to ensure an accurate return value.
+ </para>
+ <para>
+ For optimal performance, <B>MySqlDataReader</B> avoids creating
+ unnecessary objects or making unnecessary copies of data. As a result, multiple calls
+ to methods such as <see cref="MySqlDataReader.GetValue"/> return a reference to the
+ same object. Use caution if you are modifying the underlying value of the objects
+ returned by methods such as <B>GetValue</B>.
+ </para>
+ </remarks>
-<example>
- The following example creates a <see cref="MySqlConnection"/>,
- a <see cref="MySqlCommand"/>, and a <B>MySqlDataReader</B>. The example reads through
- the data, writing it out to the console. Finally, the example closes the <B>MySqlDataReader</B>, then the
- <B>MySqlConnection</B>.
- <code lang="Visual Basic">
-Public Sub ReadMyData(myConnString As String)
- Dim mySelectQuery As String = "SELECT OrderID, CustomerID FROM Orders"
- Dim myConnection As New MySqlConnection(myConnString)
- Dim myCommand As New MySqlCommand(mySelectQuery, myConnection)
- myConnection.Open()
- Dim myReader As MySqlDataReader
- myReader = myCommand.ExecuteReader()
- ' Always call Read before accessing data.
- While myReader.Read()
+ <example>
+ The following example creates a <see cref="MySqlConnection"/>,
+ a <see cref="MySqlCommand"/>, and a <B>MySqlDataReader</B>. The example reads through
+ the data, writing it out to the console. Finally, the example closes the <B>MySqlDataReader</B>, then the
+ <B>MySqlConnection</B>.
+ <code lang="Visual Basic">
+ Public Sub ReadMyData(myConnString As String)
+ Dim mySelectQuery As String = "SELECT OrderID, CustomerID FROM Orders"
+ Dim myConnection As New MySqlConnection(myConnString)
+ Dim myCommand As New MySqlCommand(mySelectQuery, myConnection)
+ myConnection.Open()
+ Dim myReader As MySqlDataReader
+ myReader = myCommand.ExecuteReader()
+ ' Always call Read before accessing data.
+ While myReader.Read()
Console.WriteLine((myReader.GetInt32(0) & ", " & myReader.GetString(1)))
- End While
- ' always call Close when done reading.
- myReader.Close()
- ' Close the connection when done with it.
- myConnection.Close()
-End Sub 'ReadMyData
- </code>
- <code lang="C#">
-public void ReadMyData(string myConnString) {
- string mySelectQuery = "SELECT OrderID, CustomerID FROM Orders";
- MySqlConnection myConnection = new MySqlConnection(myConnString);
- MySqlCommand myCommand = new MySqlCommand(mySelectQuery,myConnection);
- myConnection.Open();
- MySqlDataReader myReader;
- myReader = myCommand.ExecuteReader();
- // Always call Read before accessing data.
- while (myReader.Read()) {
- Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
- }
- // always call Close when done reading.
- myReader.Close();
- // Close the connection when done with it.
- myConnection.Close();
- }
- </code>
-</example>
-</ClassSummary>
+ End While
+ ' always call Close when done reading.
+ myReader.Close()
+ ' Close the connection when done with it.
+ myConnection.Close()
+ End Sub 'ReadMyData
+ </code>
+ <code lang="C#">
+ public void ReadMyData(string myConnString) {
+ string mySelectQuery = "SELECT OrderID, CustomerID FROM Orders";
+ MySqlConnection myConnection = new MySqlConnection(myConnString);
+ MySqlCommand myCommand = new MySqlCommand(mySelectQuery,myConnection);
+ myConnection.Open();
+ MySqlDataReader myReader;
+ myReader = myCommand.ExecuteReader();
+ // Always call Read before accessing data.
+ while (myReader.Read()) {
+ Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
+ }
+ // always call Close when done reading.
+ myReader.Close();
+ // Close the connection when done with it.
+ myConnection.Close();
+ }
+ </code>
+ </example>
+ </ClassSummary>
-<GetBytes>
- <remarks>
- <para><B>GetBytes</B> returns the number of available bytes in the field. In most
- cases this is the exact length of the field. However, the number returned may be
- less than the true length of the field if <B>GetBytes</B> has already been used
- to obtain bytes from the field. This may be the case, for example, if the
- <see cref="MySqlDataReader"/> is reading a large data structure into a buffer.
- For more information, see the <B>SequentialAccess</B> setting for
- <see cref="MySqlCommand.CommandBehavior"/>.</para>
- <para>If you pass a buffer that is a null reference (<B>Nothing</B> in Visual
- Basic), <B>GetBytes</B> returns the length of the field in bytes.</para>
- <para>No conversions are performed; therefore the data retrieved must already be a
- byte array.</para>
- </remarks>
-</GetBytes>
+ <GetBytes>
+ <remarks>
+ <para>
+ <B>GetBytes</B> returns the number of available bytes in the field. In most
+ cases this is the exact length of the field. However, the number returned may be
+ less than the true length of the field if <B>GetBytes</B> has already been used
+ to obtain bytes from the field. This may be the case, for example, if the
+ <see cref="MySqlDataReader"/> is reading a large data structure into a buffer.
+ For more information, see the <B>SequentialAccess</B> setting for
+ <see cref="MySqlCommand.CommandBehavior"/>.
+ </para>
+ <para>
+ If you pass a buffer that is a null reference (<B>Nothing</B> in Visual
+ Basic), <B>GetBytes</B> returns the length of the field in bytes.
+ </para>
+ <para>
+ No conversions are performed; therefore the data retrieved must already be a
+ byte array.
+ </para>
+ </remarks>
+ </GetBytes>
-<GetTimeSpan>
- <overloads/>
- <summary>Gets the value of the specified column as a <see cref="TimeSpan"/> object.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>Time</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetTimeSpan>
+ <GetTimeSpan>
+ <overloads/>
+ <summary>
+ Gets the value of the specified column as a <see cref="TimeSpan"/> object.
+ </summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>Time</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetTimeSpan>
-<GetTimeSpanString>
-<summary>
- Gets the value of the specified column as a <see cref="TimeSpan"/> object.
-</summary>
-<remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>Time</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
-</remarks>
-<param name="name">The name of the column.</param>
-<returns>The value of the specified column.</returns>
-</GetTimeSpanString>
-
<GetDateTime>
- <summary>Gets the value of the specified column as a <see cref="DateTime"/> object.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- <note>
- <para>
- MySql allows date columns to contain the value '0000-00-00' and datetime
- columns to contain the value '0000-00-00 00:00:00'. The DateTime structure cannot contain
- or represent these values. To read a datetime value from a column that might
- contain zero values, use <see cref="GetMySqlDateTime(int)"/>.
- </para>
- <para>
- The behavior of reading a zero datetime column using this method is defined by the
- <i>ZeroDateTimeBehavior</i> connection string option. For more information on this option,
- please refer to <see cref="MySqlConnection.ConnectionString"/>.
- </para>
- </note>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetDateTime>
+ <summary>
+ Gets the value of the specified column as a <see cref="DateTime"/> object.
+ </summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ <note>
+ <para>
+ MySql allows date columns to contain the value '0000-00-00' and datetime
+ columns to contain the value '0000-00-00 00:00:00'. The DateTime structure cannot contain
+ or represent these values. To read a datetime value from a column that might
+ contain zero values, use <see cref="GetMySqlDateTime(int)"/>.
+ </para>
+ <para>
+ The behavior of reading a zero datetime column using this method is defined by the
+ <i>ZeroDateTimeBehavior</i> connection string option. For more information on this option,
+ please refer to <see cref="MySqlConnection.ConnectionString"/>.
+ </para>
+ </note>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetDateTime>
-<GetMySqlDateTime>
- <summary>Gets the value of the specified column as a <see cref="MySql.Data.Types.MySqlDateTime"/> object.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetMySqlDateTime>
+ <GetMySqlDateTime>
+ <summary>
+ Gets the value of the specified column as a <see cref="MySql.Data.Types.MySqlDateTime"/> object.
+ </summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetMySqlDateTime>
-<GetString>
- <summary>Gets the value of the specified column as a <see cref="String"/> object.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>String</b> object.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetString>
+ <GetString>
+ <summary>
+ Gets the value of the specified column as a <see cref="String"/> object.
+ </summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>String</b> object.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetString>
-<GetDecimal>
- <summary>Gets the value of the specified column as a <see cref="Decimal"/> object.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>Decimal</b> object.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetDecimal>
+ <GetDecimal>
+ <summary>
+ Gets the value of the specified column as a <see cref="Decimal"/> object.
+ </summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>Decimal</b> object.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetDecimal>
-<GetDouble>
- <summary>Gets the value of the specified column as a double-precision floating point number.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>Double</b> object.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetDouble>
+ <GetDouble>
+ <summary>Gets the value of the specified column as a double-precision floating point number.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>Double</b> object.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or colum name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetDouble>
-<GetFloat>
- <summary>
- Gets the value of the specified column as a single-precision floating point number.
+ <GetFloat>
+ <summary>
+ Gets the value of the specified column as a single-precision floating point number.
</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>Float</b> object.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetFloat>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>Float</b> object.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetFloat>
-<GetGiud>
- <summary>Gets the value of the specified column as a globally-unique identifier (GUID).</summary>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetGiud>
+ <GetGiud>
+ <summary>Gets the value of the specified column as a globally-unique identifier (GUID).</summary>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetGiud>
-<GetInt16>
- <summary>Gets the value of the specified column as a 16-bit signed integer.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>16 bit integer</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetInt16>
+ <GetInt16>
+ <summary>Gets the value of the specified column as a 16-bit signed integer.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>16 bit integer</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetInt16>
-<GetInt32>
- <summary>Gets the value of the specified column as a 32-bit signed integer.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>32 bit integer</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetInt32>
+ <GetInt32>
+ <summary>Gets the value of the specified column as a 32-bit signed integer.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>32 bit integer</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetInt32>
-<GetInt64>
- <summary>Gets the value of the specified column as a 64-bit signed integer.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>64 bit integer</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetInt64>
+ <GetInt64>
+ <summary>Gets the value of the specified column as a 64-bit signed integer.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>64 bit integer</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetInt64>
-<GetUInt16>
- <summary>Gets the value of the specified column as a 16-bit unsigned integer.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>16 bit unsigned integer</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetUInt16>
+ <GetUInt16>
+ <summary>Gets the value of the specified column as a 16-bit unsigned integer.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>16 bit unsigned integer</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetUInt16>
-<GetUInt32>
- <summary>Gets the value of the specified column as a 32-bit unsigned integer.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>32 bit unsigned integer</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetUInt32>
+ <GetUInt32>
+ <summary>Gets the value of the specified column as a 32-bit unsigned integer.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>32 bit unsigned integer</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetUInt32>
-<GetUInt64>
- <summary>Gets the value of the specified column as a 64-bit unsigned integer.</summary>
- <remarks>
- <para>
- No conversions are performed; therefore, the data retrieved must already be a <b>64 bit unsigned integer</b> value.
- </para>
- <para>
- Call IsDBNull to check for null values before calling this method.
- </para>
- </remarks>
- <param name="index">The zero-based column ordinal.</param>
- <returns>The value of the specified column.</returns>
-</GetUInt64>
+ <GetUInt64>
+ <summary>Gets the value of the specified column as a 64-bit unsigned integer.</summary>
+ <remarks>
+ <para>
+ No conversions are performed; therefore, the data retrieved must already be a <b>64 bit unsigned integer</b> value.
+ </para>
+ <para>
+ Call IsDBNull to check for null values before calling this method.
+ </para>
+ </remarks>
+ <param name="column">The zero-based column ordinal or column name.</param>
+ <returns>The value of the specified column.</returns>
+ </GetUInt64>
</docs>
\ No newline at end of file
Modified: trunk/mysqlclient/parameter.cs
===================================================================
--- trunk/mysqlclient/parameter.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/parameter.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -40,20 +40,20 @@
#endif
public sealed class MySqlParameter : DbParameter, IDataParameter, IDbDataParameter, ICloneable
{
- private const int UNSIGNED_MASK = 0x8000;
- private object paramValue;
- private ParameterDirection direction = ParameterDirection.Input;
- private bool isNullable = false;
- private string paramName;
- private string sourceColumn;
- private DataRowVersion sourceVersion = DataRowVersion.Current;
- private int size;
- private byte precision;
- private byte scale;
- private MySqlDbType mySqlDbType;
- private DbType dbType;
- private bool inferType;
- private bool sourceColumnNullMapping;
+ private const int UNSIGNED_MASK = 0x8000;
+ private object paramValue;
+ private ParameterDirection direction = ParameterDirection.Input;
+ private bool isNullable = false;
+ private string paramName;
+ private string sourceColumn;
+ private DataRowVersion sourceVersion = DataRowVersion.Current;
+ private int size;
+ private byte precision;
+ private byte scale;
+ private MySqlDbType mySqlDbType;
+ private DbType dbType;
+ private bool inferType;
+ private bool sourceColumnNullMapping;
#region Constructors
@@ -70,7 +70,8 @@
/// </summary>
/// <param name="parameterName">The name of the parameter to map. </param>
/// <param name="value">An <see cref="Object"/> that is the value of the <see cref="MySqlParameter"/>. </param>
- public MySqlParameter(string parameterName, object value) : this ()
+ public MySqlParameter(string parameterName, object value)
+ : this()
{
ParameterName = parameterName;
Value = value;
@@ -81,10 +82,11 @@
/// </summary>
/// <param name="parameterName">The name of the parameter to map. </param>
/// <param name="dbType">One of the <see cref="MySqlDbType"/> values. </param>
- public MySqlParameter( string parameterName, MySqlDbType dbType) : this (parameterName, null)
+ public MySqlParameter(string parameterName, MySqlDbType dbType)
+ : this(parameterName, null)
{
- MySqlDbType = dbType;
- }
+ MySqlDbType = dbType;
+ }
/// <summary>
/// Initializes a new instance of the <see cref="MySqlParameter"/> class with the parameter name, the <see cref="MySqlDbType"/>, and the size.
@@ -92,7 +94,8 @@
/// <param name="parameterName">The name of the parameter to map. </param>
/// <param name="dbType">One of the <see cref="MySqlDbType"/> values. </param>
/// <param name="size">The length of the parameter. </param>
- public MySqlParameter( string parameterName, MySqlDbType dbType, int size ) : this ( parameterName, dbType )
+ public MySqlParameter(string parameterName, MySqlDbType dbType, int size)
+ : this(parameterName, dbType)
{
this.size = size;
}
@@ -104,8 +107,9 @@
/// <param name="dbType">One of the <see cref="MySqlDbType"/> values. </param>
/// <param name="size">The length of the parameter. </param>
/// <param name="sourceColumn">The name of the source column. </param>
- public MySqlParameter( string parameterName, MySqlDbType dbType, int size, string sourceColumn ) :
- this ( parameterName, dbType )
+ public MySqlParameter(string parameterName, MySqlDbType dbType, int size, string sourceColumn)
+ :
+ this(parameterName, dbType)
{
this.size = size;
this.direction = ParameterDirection.Input;
@@ -113,8 +117,9 @@
this.sourceVersion = DataRowVersion.Current;
}
- internal MySqlParameter(string name, MySqlDbType type, ParameterDirection dir, string col,
- DataRowVersion ver, object val) : this (name, type)
+ internal MySqlParameter(string name, MySqlDbType type, ParameterDirection dir, string col,
+ DataRowVersion ver, object val)
+ : this(name, type)
{
if (direction != ParameterDirection.Input)
throw new ArgumentException("Only input parameters are supported by MySql");
@@ -138,9 +143,10 @@
/// <param name="sourceVersion">One of the <see cref="DataRowVersion"/> values. </param>
/// <param name="value">An <see cref="Object"/> that is the value of the <see cref="MySqlParameter"/>. </param>
/// <exception cref="ArgumentException"/>
- public MySqlParameter( string parameterName, MySqlDbType dbType, int size, ParameterDirection direction,
+ public MySqlParameter(string parameterName, MySqlDbType dbType, int size, ParameterDirection direction,
bool isNullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion,
- object value) : this (parameterName, dbType, size, sourceColumn)
+ object value)
+ : this(parameterName, dbType, size, sourceColumn)
{
if (direction != ParameterDirection.Input)
throw new ArgumentException("Only input parameters are supported by MySql");
@@ -153,20 +159,20 @@
#region Properties
- internal bool TypeHasBeenSet
- {
- get { return inferType == false; }
- }
+ internal bool TypeHasBeenSet
+ {
+ get { return inferType == false; }
+ }
/// <summary>
/// Gets or sets the <see cref="DbType"/> of the parameter.
/// </summary>
- public override DbType DbType
+ public override DbType DbType
{
get { return dbType; }
- set
- {
- SetDbType(value);
+ set
+ {
+ SetDbType(value);
inferType = false;
}
}
@@ -178,7 +184,7 @@
#if !CF
[Category("Data")]
#endif
- public override ParameterDirection Direction
+ public override ParameterDirection Direction
{
get { return direction; }
set { direction = value; }
@@ -190,7 +196,7 @@
#if !CF
[Browsable(false)]
#endif
- public override Boolean IsNullable
+ public override Boolean IsNullable
{
get { return isNullable; }
set { isNullable = value; }
@@ -202,12 +208,12 @@
#if !CF
[Category("Data")]
#endif
- public MySqlDbType MySqlDbType
+ public MySqlDbType MySqlDbType
{
get { return mySqlDbType; }
- set
- {
- SetMySqlDbType(value);
+ set
+ {
+ SetMySqlDbType(value);
inferType = false;
}
}
@@ -218,7 +224,7 @@
#if !CF
[Category("Misc")]
#endif
- public override String ParameterName
+ public override String ParameterName
{
get { return paramName; }
set { paramName = value; }
@@ -230,7 +236,7 @@
#if !CF
[Category("Data")]
#endif
- public byte Precision
+ public byte Precision
{
get { return precision; }
set { precision = value; }
@@ -242,7 +248,7 @@
#if !CF
[Category("Data")]
#endif
- public byte Scale
+ public byte Scale
{
get { return scale; }
set { scale = value; }
@@ -254,7 +260,7 @@
#if !CF
[Category("Data")]
#endif
- public override int Size
+ public override int Size
{
get { return size; }
set { size = value; }
@@ -266,7 +272,7 @@
#if !CF
[Category("Data")]
#endif
- public override String SourceColumn
+ public override String SourceColumn
{
get { return sourceColumn; }
set { sourceColumn = value; }
@@ -278,7 +284,7 @@
#if !CF
[Category("Data")]
#endif
- public override DataRowVersion SourceVersion
+ public override DataRowVersion SourceVersion
{
get { return sourceVersion; }
set { sourceVersion = value; }
@@ -291,16 +297,16 @@
[TypeConverter(typeof(StringConverter))]
[Category("Data")]
#endif
- public override object Value
+ public override object Value
{
- get { return paramValue; }
- set
+ get { return paramValue; }
+ set
{
paramValue = value;
- if (value is Byte[])
- size = (value as Byte[]).Length;
- else if (value is String)
- size = (value as string).Length;
+ if (value is Byte[])
+ size = (value as Byte[]).Length;
+ else if (value is String)
+ size = (value as string).Length;
if (inferType)
SetTypeFromValue();
}
@@ -312,59 +318,59 @@
/// Overridden. Gets a string containing the <see cref="ParameterName"/>.
/// </summary>
/// <returns></returns>
- public override string ToString()
+ public override string ToString()
{
return paramName;
}
internal int GetPSType()
{
- switch (mySqlDbType)
- {
- case MySqlDbType.Bit:
- return (int)MySqlDbType.Int64 | UNSIGNED_MASK;
- case MySqlDbType.UByte:
- return (int)MySqlDbType.Byte | UNSIGNED_MASK;
- case MySqlDbType.UInt64:
- return (int)MySqlDbType.Int64 | UNSIGNED_MASK;
- case MySqlDbType.UInt32:
- return (int)MySqlDbType.Int32 | UNSIGNED_MASK;
- case MySqlDbType.UInt24:
- return (int)MySqlDbType.Int32 | UNSIGNED_MASK;
- case MySqlDbType.UInt16:
- return (int)MySqlDbType.Int16 | UNSIGNED_MASK;
- default:
- return (int)this.mySqlDbType;
- }
+ switch (mySqlDbType)
+ {
+ case MySqlDbType.Bit:
+ return (int)MySqlDbType.Int64 | UNSIGNED_MASK;
+ case MySqlDbType.UByte:
+ return (int)MySqlDbType.Byte | UNSIGNED_MASK;
+ case MySqlDbType.UInt64:
+ return (int)MySqlDbType.Int64 | UNSIGNED_MASK;
+ case MySqlDbType.UInt32:
+ return (int)MySqlDbType.Int32 | UNSIGNED_MASK;
+ case MySqlDbType.UInt24:
+ return (int)MySqlDbType.Int32 | UNSIGNED_MASK;
+ case MySqlDbType.UInt16:
+ return (int)MySqlDbType.Int16 | UNSIGNED_MASK;
+ default:
+ return (int)this.mySqlDbType;
+ }
}
- internal void Serialize(MySqlStream stream, bool binary)
- {
- IMySqlValue v = MySqlField.GetIMySqlValue(mySqlDbType, true);
+ internal void Serialize(MySqlStream stream, bool binary)
+ {
+ IMySqlValue v = MySqlField.GetIMySqlValue(mySqlDbType, true);
- if (!binary && (paramValue == null || paramValue == DBNull.Value))
- stream.WriteStringNoNull("NULL");
- else
- v.WriteValue(stream, binary, paramValue, size);
- }
+ if (!binary && (paramValue == null || paramValue == DBNull.Value))
+ stream.WriteStringNoNull("NULL");
+ else
+ v.WriteValue(stream, binary, paramValue, size);
+ }
- private void SetMySqlDbType(MySqlDbType mySqlDbType)
+ private void SetMySqlDbType(MySqlDbType mySqlDbType)
{
this.mySqlDbType = mySqlDbType;
- switch (mySqlDbType)
+ switch (mySqlDbType)
{
case MySqlDbType.Decimal: dbType = DbType.Decimal; break;
case MySqlDbType.Byte: dbType = DbType.SByte; break;
case MySqlDbType.UByte: dbType = DbType.Byte; break;
case MySqlDbType.Int16: dbType = DbType.Int16; break;
case MySqlDbType.UInt16: dbType = DbType.UInt16; break;
- case MySqlDbType.Int24:
+ case MySqlDbType.Int24:
case MySqlDbType.Int32: dbType = DbType.Int32; break;
case MySqlDbType.UInt24:
case MySqlDbType.UInt32: dbType = DbType.UInt32; break;
case MySqlDbType.Int64: dbType = DbType.Int64; break;
case MySqlDbType.UInt64: dbType = DbType.UInt64; break;
- case MySqlDbType.Bit : dbType = DbType.UInt64; break;
+ case MySqlDbType.Bit: dbType = DbType.UInt64; break;
case MySqlDbType.Float: dbType = DbType.Single; break;
case MySqlDbType.Double: dbType = DbType.Double; break;
case MySqlDbType.Timestamp:
@@ -375,20 +381,20 @@
case MySqlDbType.Time: dbType = DbType.Time; break;
case MySqlDbType.Enum:
case MySqlDbType.Set:
- case MySqlDbType.VarChar: dbType = DbType.String; break;
+ case MySqlDbType.VarChar: dbType = DbType.String; break;
case MySqlDbType.TinyBlob:
case MySqlDbType.MediumBlob:
case MySqlDbType.LongBlob:
- case MySqlDbType.Blob: dbType = DbType.Object; break;
+ case MySqlDbType.Blob: dbType = DbType.Object; break;
case MySqlDbType.String: dbType = DbType.StringFixedLength; break;
}
}
- private void SetDbType(DbType dbType)
+ private void SetDbType(DbType dbType)
{
this.dbType = dbType;
- switch (dbType)
+ switch (dbType)
{
case DbType.Guid:
case DbType.AnsiString:
@@ -412,7 +418,7 @@
case DbType.Double: mySqlDbType = MySqlDbType.Double; break;
case DbType.Int16: mySqlDbType = MySqlDbType.Int16; break;
- case DbType.UInt16: mySqlDbType = MySqlDbType.UInt16; break;
+ case DbType.UInt16: mySqlDbType = MySqlDbType.UInt16; break;
case DbType.Int32: mySqlDbType = MySqlDbType.Int32; break;
case DbType.UInt32: mySqlDbType = MySqlDbType.UInt32; break;
@@ -424,29 +430,29 @@
case DbType.Currency: mySqlDbType = MySqlDbType.Decimal; break;
case DbType.Object:
- case DbType.VarNumeric:
- case DbType.Binary:
- default:
+ case DbType.VarNumeric:
+ case DbType.Binary:
+ default:
mySqlDbType = MySqlDbType.Blob; break;
}
}
- private void SetTypeFromValue()
+ private void SetTypeFromValue()
{
if (paramValue == null) return;
- if (paramValue is Guid)
- DbType = DbType.String;
- else if (paramValue is TimeSpan)
- DbType = DbType.Time;
- else if (paramValue is bool)
- DbType = DbType.Byte;
- else
+ if (paramValue is Guid)
+ DbType = DbType.String;
+ else if (paramValue is TimeSpan)
+ DbType = DbType.Time;
+ else if (paramValue is bool)
+ DbType = DbType.Byte;
+ else
{
TypeCode tc = Type.GetTypeCode(paramValue.GetType());
- switch (tc)
+ switch (tc)
{
case TypeCode.SByte: DbType = DbType.SByte; break;
case TypeCode.Byte: DbType = DbType.Byte; break;
@@ -460,18 +466,18 @@
case TypeCode.String: DbType = DbType.String; break;
case TypeCode.Single: DbType = DbType.Single; break;
case TypeCode.Double: DbType = DbType.Double; break;
- case TypeCode.Decimal: DbType = DbType.Decimal; break;
- case TypeCode.Object:
+ case TypeCode.Decimal: DbType = DbType.Decimal; break;
+ case TypeCode.Object:
default: DbType = DbType.Object; break;
}
}
}
#region ICloneable
- object System.ICloneable.Clone()
+ object System.ICloneable.Clone()
{
- MySqlParameter clone = new MySqlParameter( paramName, mySqlDbType, direction,
- sourceColumn, sourceVersion, paramValue );
+ MySqlParameter clone = new MySqlParameter(paramName, mySqlDbType, direction,
+ sourceColumn, sourceVersion, paramValue);
return clone;
}
#endregion
@@ -490,7 +496,7 @@
return base.CanConvertTo(context, destinationType);
}
- public override object ConvertTo(ITypeDescriptorContext context,
+ public override object ConvertTo(ITypeDescriptorContext context,
System.Globalization.CultureInfo culture, object value, Type destinationType)
{
if (destinationType == typeof(InstanceDescriptor))
@@ -499,8 +505,8 @@
new Type[]{typeof(string), typeof(MySqlDbType), typeof(int), typeof(ParameterDirection),
typeof(bool), typeof(byte), typeof(byte), typeof(string), typeof(DataRowVersion),
typeof(object)});
- MySqlParameter p = (MySqlParameter) value;
- return new InstanceDescriptor(ci,new object[]{
+ MySqlParameter p = (MySqlParameter)value;
+ return new InstanceDescriptor(ci, new object[]{
p.ParameterName, p.DbType, p.Size, p.Direction, p.IsNullable, p.Precision,
p.Scale, p.SourceColumn, p.SourceVersion, p.Value});
}
@@ -511,15 +517,23 @@
}
#endif
- public override void ResetDbType()
- {
- this.inferType = true;
- }
+ /// <summary>
+ /// Resets the <b>DbType</b> property to its original settings.
+ /// </summary>
+ public override void ResetDbType()
+ {
+ this.inferType = true;
+ }
- public override bool SourceColumnNullMapping
- {
- get { return sourceColumnNullMapping; }
- set { sourceColumnNullMapping = value; }
- }
+ /// <summary>
+ /// Sets or gets a value which indicates whether the source column is nullable.
+ /// This allows <see cref="DbCommandBuilder"/> to correctly generate Update statements
+ /// for nullable columns.
+ /// </summary>
+ public override bool SourceColumnNullMapping
+ {
+ get { return sourceColumnNullMapping; }
+ set { sourceColumnNullMapping = value; }
+ }
+ }
}
-}
Modified: trunk/mysqlclient/parameter_collection.cs
===================================================================
--- trunk/mysqlclient/parameter_collection.cs 2006-11-27 16:28:59 UTC (rev 464)
+++ trunk/mysqlclient/parameter_collection.cs 2006-11-27 16:33:59 UTC (rev 465)
@@ -41,7 +41,7 @@
private Hashtable ciHash;
private Hashtable hash;
- public MySqlParameterCollection()
+ internal MySqlParameterCollection()
{
hash = new Hashtable();
#if NET20
@@ -181,6 +181,10 @@
#region DbParameterCollection Implementation
+ /// <summary>
+ /// Adds an array of values to the end of the <see cref="MySqlParameterCollection"/>.
+ /// </summary>
+ /// <param name="values"></param>
public override void AddRange(Array values)
{
foreach (DbParameter p in values)
@@ -309,6 +313,10 @@
get { return items.Count; }
}
+ /// <summary>
+ /// Returns an enumerator that iterates through the <see cref="MySqlParameterCollection"/>.
+ /// </summary>
+ /// <returns></returns>
public override IEnumerator GetEnumerator()
{
return ((IEnumerable)items).GetEnumerator();
@@ -350,16 +358,28 @@
items.Insert(index, value);
}
+ /// <summary>
+ /// Gets a value that indicates whether the <see cref="MySqlParameterCollection"/>
+ /// has a fixed size.
+ /// </summary>
public override bool IsFixedSize
{
get { return items.IsFixedSize; }
}
+ /// <summary>
+ /// Gets a value that indicates whether the <see cref="MySqlParameterCollection"/>
+ /// is read-only.
+ /// </summary>
public override bool IsReadOnly
{
get { return items.IsReadOnly; }
}
+ /// <summary>
+ /// Gets a value that indicates whether the <see cref="MySqlParameterCollection"/>
+ /// is synchronized.
+ /// </summary>
public override bool IsSynchronized
{
get { return items.IsSynchronized; }
@@ -394,6 +414,10 @@
items.RemoveAt(index);
}
+ /// <summary>
+ /// Gets an object that can be used to synchronize access to the
+ /// <see cref="MySqlParameterCollection"/>.
+ /// </summary>
public override object SyncRoot
{
get { return items.SyncRoot; }
| Thread |
|---|
| • Connector/NET commit: r465 - in trunk/mysqlclient: . docs | rburnett | 27 Nov |