2008-08-26  Veerapuram Varadhan  <vvaradhan@novell.com>

	* SqlDataReader.cs (NextResult): Memleak fix - mark datatypeNames
	array to be GCed along with schemaTable.
       
2008-08-26  Veerapuram Varadhan  <vvaradhan@novell.com>

	* SqlDataReader.cs: Do not generate schemaTable unless otherwise
	asked for; use command.Tds.Columns instead.  Improves performance
	of the DataReader.

2008-07-10  Veerapuram Varadhan  <vvaradhan@novell.com>

	** Fixes #326182
	* SqlCommand.cs (GetOutputParameters): Update parameter values iff 
	parameter direction is InputOutput or Output.
	
2008-07-06  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlException.cs: Modified HResult/ErrorCode to match MS. Removed
	unused FromTdsInternalException overload. Removed unnecessary check
	for Errors.Count. Minor code formatting.

2008-07-03  Rodrigo Kumpera  <rkumpera@novell.com>

	* SqlConnection.cs: Remove connStringParameters as nobody uses it.
	
2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>

	* SqlDataReader.cs: Do all column accesses with int indexes.	

2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>

	* SqlDataReader.cs (GetSchemaTable): All column index are constants,
	extract them.

2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>

	* SqlDataReader.cs (GetSchemaTable): Calculate column indexes
	outside of the row loop.

2008-07-01  Marek Habersack  <mhabersack@novell.com>

	* SqlDataReader.cs: use named properties in TdsDataColumn for the
        2.0 profile.

2008-06-30  Zoltan Varga  <vargaz@gmail.com>

	* SqlDataReader.cs: Allocate 'schemaTable' lazily. 
	(GetSchemaValue): Avoid some hash table lookups

2008-06-27  Zoltan Varga  <vargaz@gmail.com>

	* SqlDataReader.cs (ConstructSchemaTable): Avoid unneccessary reflection calls.

2008-06-23  Veerapuram Varadhan  <vvaradhan@novell.com>

	* SqlDependency.cs: New
	
2008-06-12  Veerapuram Varadhan  <vvaradhan@novell.com>
	
	Patch by Christian Hergert <christian.hergert@gmail.com>
	* SqlConnection.cs (Open): Do not reset the connection as it is already 
	done in the TdsConnectionPool itself.
	
2008-06-12  Marek Habersack  <mhabersack@novell.com>

	* SqlParameterCollection.cs: this [int] must check the range and
	throw an exception if necessary.
	
	* SqlCommand.cs: throw IOEX when stored procedure is not found in
	DeriveParameters. All procedures in MS SQL will report at least
	one parameter - the return value.

2008-06-10  Veerapuram Varadhan  <vvaradhan@novell.com>
	
	* SqlConnection.cs: TdsConnectionPool.GetConnectionPool() now returns 
	IDictionary<TKey, TValue>. 
	
2008-06-09  Ankit Jain  <jankit@novell.com>

	* SqlCommand.cs: Use Tds instead of ITds now.
	* SqlConnection.cs:  Likewise.

2008-05-27  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlConnection.cs: Added support for '.' as alias for localhost.
	Improve exception message when TCP/IP protocol is not enabled.

2008-05-17  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlDataReader.cs (GetInt64): Removed workaround for TDS 7.0 handling
	of bigint column type as this is handled in Mono.Data.Tds.

2008-05-14  Marek Habersack  <mhabersack@novell.com>

	* SqlConnection.cs: added support for USER INSTANCE keyword in the
	connection string.

2008-04-22  Veerapuram Varadhan  <vvaradhan@novell.com>

	** Fixes Bug#381151
	* SqlCommand.cs: Handle exceptions sanely and do not close
	connection on TdsTimeoutException.
	
2008-04-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlBulkCopyColumnMappingCollection.cs: Changed argument names to
	match MS. Code formatting.
	* SqlCommand.cs: Changed argument names to match MS. Code formatting.
	Do not include explicit IDbCommand implementation on 2.0 profile.
	* SqlCommandBuilder.cs: Changed argument names to match MS. Code
	formatting.
	* SqlDataReader.cs: Changed argument names to match MS. Code
	formatting.
	* SqlParameterCollection.cs: Do not include IList, ICollection and
	IDataParameterCollection explicit interface implementation on 2.0
	profile. Code formatting.
 	* SqlConnection.cs: Changed argument names to match MS.
	* SqlDataAdapter.cs: Changed argument names to match MS.
	* SqlTransaction.cs: Do not include explicit interface implementation
	of IDbTransaction.Connection on 2.0 profile. Code formatting.

2008-04-19  Robert Jordan  <robertj@gmx.net>

	* SqlParameterCollection.cs (AddRange(SqlParameter[])):
	Fix endless recursion.

2008-04-08  Marek Habersack  <mhabersack@novell.com>

	* SqlConnection.cs: TCP port discovery via UDP port 1434 should
	honor the timeout specified in the connection string (or the
	default one). In some environments 100 microseconds might not be
	enough to discover the port.

2008-04-01  Marek Habersack  <mhabersack@novell.com>

	* SqlParameter.cs: ConvertToFrameworkType must handle empty
	strings gracefully - a DBNull.Value must be returned in this
	case.

	* SqlCommand.cs: DeriveParameters should split the stored
	procedure name into the schema name and procedure name before
	querying its parameters.

2008-03-03  Ankit Jain  <jankit@novell.com>

	* SqlClientMetaDataCollectionNames.cs: Set the field values.

2007-10-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlCommand.cs: Use ExceptionHelper.CheckEnumValue for enum checks.

2007-10-20  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlCommand.cs: Added constant for default CommandTimeout, instead
	of using a magic number. Avoid unnecessary initialization. Fixed
	default value for DesignTimeVisible. Return zero-length string if
	CommandText is null. Use ExceptionHelper.InvalidEnumValueException
	to avoid code duplication. Spaces to tabs and code formatting.
	* SqlConnection.cs: Use different default package size on 2.0 profile.
	Added constants for default values, instead of using magic numbers.
	Avoid unnecessary initialization. In PacketSize, return default or
	configured packet size when connection is not open. Use
	ExceptionHelper.ConnectionClosed instead of local method. Removed
	use of some hardcoded values in SetDefaultConnectionParameters, and
	use Environment.MachineName as default WorkstationId instead of
	DNS host name. Code formatting.
	* SqlDataAdapter.cs: In default ctor, set SelectCommand to null.
	Avoid unnecessary initializations. Use direct assignment in
	IDbDataAdapter implementation. Fixed exception message for negative
	UpdateBatchSize. In Dispose override, make sure to invoke base
	method.

2007-10-19  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlTransaction.cs: Clear connection in commit. In IsolationLevel,
	throw IOE if transaction is no longer open.

2007-10-19  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlTransaction.cs: Avoid unnecessary initialization. Remove 
	isRolledBack since its essentially the same as isOpen. Use
	ExceptionHelper.TransactionNotUsable instead of duplicating code.
	On 2.0 profile, ignore call to Rollback when transaction was already
	disposed.

2007-10-18  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlConnection.cs: Avoid unnecessary initialization. Use string.Empty
	for assigning zero-length string, and use String.Length to check for
	zero-length string. Added support for IsolationLevel.Snapshot.
	Added StructuredTypeMembers schema collection and restrictions. Fixed
	table name for MetaDataCollections collection. Implemented
	DataSourceInformation collection. Added missing data types (probably
	introduced in 2.0 SP1). In GetSchema, throw InvalidOperationException
	if connection is closed and throw NotImplementedException for
	StructuredTypeMembers collection.

2007-10-18  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlConnection.cs: On 1.0 profile, IsolationLevel.Unspecified is
	not valid. On 2.0 profile, when IsolationLevel.Unspecified is passed
	make sure to also set SqlTransaction.IsolationLevel to
	ReadCommitted. Modified exceptions to match MS.

2007-10-17  Nagappan <anagappan@novell.com> 

	* SqlParameter.cs (ConvertToFrameworkType): Added SqlDbType.Image.

2007-10-17  Nagappan <anagappan@novell.com> 

	* SqlConnection.cs: BeginTransaction does not handle
	  IsolationLevel.Unspecified, so the default is set as ReadCommited.
	  Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
	  bug # 333082.
	* SqlTransaction.cs: If transaction count is greater then 0 then roll back.
	  Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
	  bug # 331953.

2007-10-15  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlException.cs: Do not hide Message on 2.0 profile. Fixes bug
	#333901.

2007-10-08  Marek Safar <marek.safar@gmail.com> 

	* SqlParameterCollection.cs (SetParameter): Fixed missing cast.
	
2007-09-27  Nagappan A <anagappan@novell.com> 

	* SqlConnection.cs: Added MonoTODO appropriately.

2007-09-26  Nagappan A <anagappan@novell.com> 

	* SqlCommandBuilder.cs: Code alignment.

2007-09-25  Nagappan A  <anagappan@novell.com>

	* SqlInitialCatalogConverter.cs, SqlDataSourceConverter.cs:
	NetworkLibraryConverter.cs: Added new files.

	* SqlParameter.cs: 2.0 attribute changes.

	* SqlDataAdapter.cs: 2.0 attribute changes.

	* SqlConnectionStringBuilder.cs: 2.0 attribute changes.

	* SqlConnection.cs (ClearAllPools, ClearPool): Implemented 2.0
	APIs, other 2.0 attribute changes.

	* SqlCommandBuilder.cs (GetSchemaTable, InitializeCommand):
	Implemented 2.0 APIs, other 2.0 attribute changes.

	* SqlBulkCopyColumnMappingCollection.cs: Added constructor, 2.0
	API compatibility changes.

	* SqlException.cs: 2.0 attribute changes.

2007-08-13  Nagappan A  <anagappan@novell.com>

	* SqlConnection.cs (ConnectionString): 2.0 compatibility changes.

	* SqlDataReader.cs (IsCommandBehavior): Fixed spelling mistake of
	the method name.
	(Dispose): 2.0 compatibility changes.

	* SqlBulkCopy.cs (SqlRowsCopied): Fixed spelling mistake of the
	event name.
	(RowsCopied): Generates event when NotifyAfter is set.

	* SqlCommandBuilder.cs (Dispose, RefreshSchema): 2.0 compatibility
	changes.

	* SqlClientFactory.cs (CreateDataSourceEnumerator): Removed bogus
	TODO.

	* SqlException.cs (Message): 2.0 compatibility changes.

2007-08-06  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs, SqlDataReader.cs, SqlConnection.cs: When the
	server resets the connection, now the client code also disconnects
	the session and remove the instance from pool. Fixes bug # 81933.

2007-07-31  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs (Transaction, Connection): IDbCommand Transaction
	and Connection can be set to null. Fixes bug 82189.

2007-07-23  Nagappan A  <anagappan@novell.com>

	* SqlCommandBuilder.cs (ApplyParameterInfo, GetParameterName):
	(GetParameterPlaceholder): Implemented 2.0 missing APIs.

2007-07-22  Nagappan A  <anagappan@novell.com>

	* SqlBulkCopy.cs (NotifyAfter): Implemented 2.0 property.
	(GetColumnMetaData, GenerateColumnMetaData):
	(ValidateColumnMapping): Implemented private method's to generate
	and validate SqlBulkCopy headers.
	(BulkCopyToServer): Private method to actually do the bulk copy
	processing.
	(WriteToServer): Implemented 2.0 missing overloaded methods.
	(IDisposable.Dispose): Implemented 2.0 missing method.

	* SqlBulkCopyColumnMappingCollection.cs (Add, CopyTo): Implemented
	missing API.
	(Item): Implemented missing property.

	* SqlBulkCopyColumnMapping.cs: Modified the implementation of
	Constructors to use property.

	* SqlDataReader.cs (GetSqlXml, IsCommandBehaviour): Added 2.0
	missing method.
	(Connection): Added missing property.

	* SqlParameter.cs (SetSqlDbType, ConvertToFrameworkType): Modified
	method as internal from private.

	* SqlConnection.cs: Fixed 2.0 missing feature.

	* SqlException.cs: Fixed 2.0 missing feature.

	* SqlClientPermission.cs: Fixed 2.0 missing feature.

2007-07-01  Gert Driesen  <drieseng@users.sourceforge.net>

	* ISqlNotificationReceiver.cs: Removed.
	* SqlClientFactory.cs: Use SqlDataSourceEnumerator from S.D.Sql and
	marked method todo. Avoid unnessary casts. Code formatting.
	* SqlCommand.cs: Explicit interface implementation of IDbCommand not
	necessary on 2.0 profile. Fixes API mismatches. Avoid unnecessary
	casts. Code formatting.
	* SqlConnection.cs: Also use RecommendAsConfigurable instead of
	SettingBindableAttribute on 2.0. Use StateChange event from base class
	on 2.0. Only explicitly implement IDbConnection methods on 1.0, since
	these are implemented by base class on 2.0 profile. Removed extra
	explicit implementation of IDisposable since the base class implements
	this. Code formatting.
	* SqlDataAdapter.cs: Dispose (bool) override not necessary on 2.0
	profile. Stubbed ICloneable.Clone. Fixes API mismatches.
	* SqlDataReader.cs: On 2.0, IDisposable.Dispose is implemented by
	DbDataReader. Only 1.0 profile, explicitly implemented IEnumerable
	GetEnumerator. Code formatting.
	* SqlDataSourceEnumerator.cs: Removed.
	* SQLDebugging.cs: Marked sealed on 2.0. Code formatting.
	* SqlNotificationAuthType.cs: Removed.
	* SqlNotificationInfo.cs: Added missing fields. Code formatting.
	* SqlNotificationSource.cs: Added missing fields. Code formatting.
	* SqlNotificationTransports.cs: Removed.
	* SqlNotificationType.cs: Added missing Unknown field. Code formatting.
	* SqlParameter.cs: Removed Browsable and EditorBrowsable attributes
	from Precision and Scale. Fixes API mismatches. Code formatting fixes.
	* SqlTransaction.cs: On 2.0 profile, Dispose method is exposed by
	base class. Fixes API mismatches. Code formatting fixes.

2007-06-21  Nagappan A  <anagappan@novell.com>

	* SqlConnection.cs: Fixed compiler warning.

2007-06-11  Nagappan A  <anagappan@novell.com>

	* SqlConnection.cs (ParseDataSource): Adds tcp support in
	connection string. Fixes bug # 80975.

	* SqlCommand.cs (Dispose): On disposing the command object, don't
	dispose connection and transaction.

2007-06-06  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs, SqlConnectionStringBuilder.cs, SqlConnection.cs:
	Fixed 1.0 and 2.0 extras, errors as stated in class status page.

	* SqlDataAdapter.cs, SqlParameter.cs:Fixed 1.0 and 2.0 extras,
	errors as stated in class status page.

	* SqlBulkCopyColumnMappingCollection.cs: Fixed 1.0 and 2.0 extras,
	errors as stated in class status page.

2007-05-30  Nagappan A  <anagappan@novell.com>

	* SqlParameter.cs (SqlParameter): Updated constructor to use the
	new TDS RPC implementation.
	Fixed missing attributes.
	(SetDbType): Added new case for sql_variant type.
	(ConvertToFrameworkType): Implemented new private method to
	convert the data type to framework type.

	* SqlParameterCollection.cs: Fixed missing attributes and
	implemented missing methods.

	* SqlConnection.cs: Fixed missing attributes.

	* SqlConnectionStringBuilder.cs: Certain attributes are missing or
	its value or they are not appropriate. Fixed them.

	* SqlDataReader.cs (GetData): Method is available only under 1.0
	profile.
	
	* SqlCommandBuilder.cs: Certain attributes are available only
	under 2.0 profile, so moved them inside ifdef.

	* SqlCommand.cs: Certain attributes are available only under 2.0
	profile, so moved them inside ifdef.

	* SqlBulkCopy.cs: Added new stubs.

	* SqlBulkCopyColumnMappingCollection.cs: Added new stubs.

2007-05-29  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs (Dispose): Command.Dispose closing
	connection. Fixes bug # 81710. Thanks to AMC <amc1999@gmail.com>
	for the fix.

2007-05-10  Nagappan A  <anagappan@novell.com>

	* SqlClientMetaDataCollectionNames.cs: Fixed incorrect constructor
	type.

	* SqlConnectionStringBuilder.cs: Fixed missing attributes.

2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>

	* SqlConnectionStringBuilder.cs: added MonoNotSupported attribute.

2007-04-03  Amit Biswas  <amit@amitbiswas.com>

	* SqlDataReader.cs (GetSqlBytes, GetProviderSpecificFieldType)
	(GetProviderSpecificValue, GetProviderSpecificValues): Implemented
	missing API.

	* SqlParameter.cs (XmlSchemaCollectionDatabase): Implemented missing property
	(XmlSchemaCollectionName): Implemented missing property
	(XmlSchemaCollectionOwningSchema): Implemented missing property
	(SourceColumnNullMapping): Existing implementation was not correct, Replaced the implementation
	(.ctor): Implemented mising constructor new in .net 2.0

	* SqlErrorCollection.cs (CopyTo): Implemented missing API

	* SqlParameter.cs (InferSqlType): Corrected bug related to default values of
	SqlDbType and DbType
	(ResetSqlDbType): Implemented missing API
	(ResetDbType): Implemented missing API	

2007-03-09  Amit Biswas  <amit@amitbiswas.com>

	* SqlParameterCollection.cs (CopyTo): Implemented missing API

2007-04-02  Nagappan A  <anagappan@novell.com>

	* SqlParameter.cs: Variable name fix.

2007-03-20  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>

	* SqlClientFactory.cs: Added two using directives.
	(CreateConnectionStringBuilder): Implemented the method.
	(CreatePermission): Implemented the property.
	
	* SqlCommand.cs: Added one using directive.
	(Clone): Implemented the method.
	(Dispose): Implemented the method.
	(BeginExecuteXmlReader): Implemented the method.
	
	* SqlCommandBuilder.cs (QuoteIdentifier): Implemented the method.
	(UnquoteIdentifier): Implemented the method.
	
	* SqlConnection.cs (ChangePassword): Implemented the method.

2007-03-19  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>

	* SqlClientFactory.cs (CanCreateDataSourceEnumerator): Implemented
	the property.

	* SqlCommand.cs (Notification): Implemented the property.
	(NotificationAutoEnlist): Implemented the property.

	* SqlDataReader.cs (VisibleFieldCount): Implemented the property.

	* SqlConnectionStringBuilder.cs (TrustServerCertificate): Implemented
	the property.
	(TypeSystemVersion): Implemented the property.
	(UserInstance): Implemented the property.
	(ContextConnection): Implemented the property.

	* SqlConnection.cs (FireInfoMessageEventOnUserErrors): Implemented
	the property.
	(StatisticsEnabled): Implemented the property.
	
	* SqlDataAdapter.cs (UpdateBatchSize): Implemented the property.

	* SqlParameter.cs: Implemented one attribute.

2007-03-16  Andreia Gaita  <avidigal@novell.com>
	
	* SqlParameter.cs: Move isVariableSizeType flag to TdsMetaParameter
	so that the TdsMetaParameter can validate itself for valid size / values.
	* SqlCommand.cs (Execute): Call Validate on TdsMetaParameter.

2007-03-14  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs (CommandType): Exception type thrown in 2.0
	profile is different than 1.0, ArgumentOutOfRangeException.
	(Connection): Exception type thrown in 2.0 profile is different
	than 1.0, ArgumentOutOfRangeException.
	(Execute): If Size property is 0 for String and Binary type, then
	throw InvalidOperationException.
	(ValidateCommand): Exception type thrown in 2.0 profile is
	different than 1.0, NullReferenceException.

2007-03-09  Nagappan A  <anagappan@novell.com>

	* SqlDataReader.cs: Fixed syntax erros reported in class status
	page.

2007-03-09  Andreia Gaita  <avidigal@novell.com>

	* SqlCommand.cs (ExecuteScalar): Fix returned value for 
	stored procedure calls to return the first column of the
	first row produced by the proc.

2007-03-08  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs (CloseDataReader): Checks whether the SQL
	connection is created or not.

2007-03-07  Andreia Gaita <avidigal@novell.com>

	* SqlCommand.cs (ExecuteScalar): when calling stored procedures,
	implement support for return of output values in the parameter
	collection.

2007-02-16  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>

	* SqlParameter.cs (CompareInfo): Implemented the property
	CompareInfo.
	(LocaleId): Written the property LocaleId.
	(SqlValue): Written the propert SqlValue.

2007-02-15  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>

	* SqlCommand.cs: Added some attributes which were not implemented
	for .NET 2.0 and removed extra attribute which are not there in
	.NET 2.0.

	* SqlCommandBuilder.cs: Added some attributes that were not 
	implemented for .NET 2.0.

	* SqlParameterCollection.cs: Added some attributes that were 
	not implemented for .NET 2.0.

	* SqlConnectionStringBuilder.cs: Added some attributes that
	 were not implemented for .NET 2.0.
	
	* SqlConnection.cs: Added attribute that was not implemented
	for .NET 2.0.

	* SqlParameter.cs: Added some attributes which were not
	implemented for .NET 2.0 and removed some extra attributes which
	are not there in .NET 2.0

2007-02-09  Nagappan A  <anagappan@novell.com>

	* SqlConnection.cs (SetConnectionString): Fixes bug # 80712. A
	small typo.

2007-01-08  Nagappan A  <anagappan@novell.com>

	* SqlTransaction.cs (Dispose): Fixed compliation warning.

	* SqlDataReader.cs (GetValues): Length of elements to be copied was
	decided based on the argument array passed, which caused a bug, if
	the length of given array is more than actual column values.

	* SqlCommandBuilder.cs (CatalogSeparator, SchemaSeparator)
	(CatalogLocation): Implemented missing properties.
	(CreateDeleteCommand, CreateInsertCommand, CreateUpdateCommand):
	Modified private methods to take bool flag. If true, add actual
	parameter name instead of p1, p2 etc.
	(CreateParameter): Added overloaded private method to create
	parameter with the actual column name.
	(GetUpdateCommand, GetDeleteCommand, GetInsertCommand):
	Implemented missing overloaded methods.
	(SetRowUpdatingHandler): Implemented missing protected method.

	* SqlCommand.cs: Fixed compilation warning. Removed bogus
	MonoTODO's.

2006-12-05  Nagappan A  <anagappan@novell.com>

	* SqlCommand.cs (Execute): If sql2 length is greater than 0, then
	add ';' and the respective sql2 string and then execute the
	string. Fixes bug # 79880.

2006-08-30  Nagappan A  <anagappan@novell.com>

	* SqlConnection.cs: Implemented SqlConnection.GetSchema ().

2006-09-08  Konstantin Triger <kostat@mainsoft.com>

	* SqlClientFactory.cs: implemented SqlClientFactory.CreateConnection ().

2006-07-13  Senganal T  <tsenganal@novell.com>

	* SqlClientFactory.cs SqlCommand.cs SqlConnectionFactory.cs 
	SqlClientPermission.cs SqlParameterCollection.cs SqlDataReader.cs 
	SqlConnection.cs SqlParameter.cs SqlTransaction.cs :
		2.0 Api fixes

2006-05-31  Gert Driesen  <drieseng@users.sourceforge.net>

	* SqlConnection.cs: Removed extra destructor, as destructor on 
	System.ComponentModel.Component already calls Dispose.
	* SqlParameter.cs: Removed explicit interface implementation of
	IDataParameter.ParameterName.

2006-05-26  Senganal T  <tsenganal@novell.com>

	* SqlParameter.cs :
		- InferSqlType : if value is null or DBNull.Value, retain the
		current parameter type.

2006-04-18  Senganal T  <tsenganal@novell.com>

	* SqlConnection.cs :
		- SetConnectionString : set the pareameter to default values
		if connection string is empty or null
		- Open : Raise InvalidOperationException if Connection String
		is empty or null
		- Dispose : Test exception not raised if dispose called on a
		connection with empty connection string

	slight modification of the patch by Jonel Rienton

2006-04-07  Senganal T  <tsenganal@novell.com>

	* SqlCommandBuilder.cs :
		* CreateDeleteCommand () 
		* CreateUpdateCommand () 
		* CreateInsertCommand () 
			- Changed the signature. Do not need DataRow parameter 
			as the Query generated is parametric.
			- Correct the null-check term in the WhereClause, set the
			correct properties for null-check parameter
			fixes #78027
			- Modified the generated query to match the query as
			generated by 2.0. We now ignore null-check in the
			whereclause if the Column does not allow nulls.
		* ctor () : Set QuotePrefix and QuoteSuffix for 2.0 profile
		* GetUpdateCommand ()
		* GetInsertCommand ()
		* GetDeleteCommand ()
			- Do not create new command everytime. Create only if
			not already created.
		* RefreshSchema : Reset the commands.

2006-02-17  Chris Toshok  <toshok@ximian.com>

	* SqlCommand.cs, SqlCommandBuilder.cs, SqlConnection.cs,
	SqlDataAdapter.cs: remove DataSysDescription attributes for >= 2.0

2006-02-17  Chris Toshok  <toshok@ximian.com>

	* SqlDataReader.cs: remove VisibleFieldCount property.

2006-02-10  Senganal T  <tsenganal@novell.com>
	* SqlDataReader.cs :
		- GetBytes : Read binary/blob/clob data sequentially when
		CommandBehavior is set to SequentialAcccess
		- GetChars : Read String/clob data sequentially when CommandBehavior
		is set to SequentialAccess
	* SqlCommand.cs :
		- ExecuteReader : set SequentialAccess property on TDS
		- CloseDataReader : Reset the command behavior

2006-01-27  Senganal T  <tsenganal@novell.com>

	* SqlCommandBuilder.cs :
		- Modified  CreateUpdateCommand,CreateDeleteCommand , to not include
		column name in the query if its a expression col.
		Also, modified the queries to match the generated queries in ms.net
	* SqlCommand.cs :
		- Modifed Prepare, to check if Parameter is explicitly initialized
	* SqlParameter.cs :
		- Added CheckIfInitialized : Checks if datatype is explicitly set and
		non-zero size is set for variable datatypes.
	* SqlDataReader.cs :
		- Added code for GetSqlBinary ()
		- Fixed GetFieldCount ()
		- Added more checks and exceptions. 

2006-01-17  Senganal T  <tsenganal@novell.com>

	* SqlCommandBuilder.cs
		- Modified CreateNewCommand () : Clean up any existing parameter list
		before reusing the command.Fixes #77225

2005-11-24  Senganal T  <tsenganal@novell.com>

	* SqlConnection.cs 
		- Modifications to get the correct Packet Size

2005-11-21  Senganal T  <tsenganal@novell.com>

	* SqlClientFactory.cs
	* SqlCommandBuilder.cs
	* SqlParameterCollection.cs
	* SqlDataReader.cs
	* SqlDataAdapter.cs
	* SqlParameter.cs
	* SqlTransaction.cs

	Added stubs and other changes for ADO.NET 2.0 compatibility
	
2005-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SqlConnection.cs: don't throw NotImplementedException when using
	'PERSIST SECUTIRY INFO'. Just do nothing.

2005-10-27  Senganal T  <tsenganal@novell.com>

	* SqlCommand.cs 
	* SqlDataReader.cs 
	
	Made changes so that the number of rows affected can be got directly from 
	Tds regardsless of the type of query.Fixes bug #75698

2005-10-19  Senganal T  <tsenganal@novell.com>

	* SqlConnection.cs (SetProperties) :
		- Added support for AttachDBFileName

2005-10-19  Senganal T  <tsenganal@novell.com>
	
	* SqlException.cs (Constructor)
		- Modified the constructor, so that the message parameter
		of base class is not the same as that of the Exception message.
		fixes bug #76468
		
2005-09-24  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlParameterCollection.cs (AddWithValue): added method. patch
	from awaddell@fnfr.com (Andy Waddell).

2005-09-21 Senganal T <tsenganal@novell.com>


	* SqlConnection.cs : 
		- Set the correct Default Values for Parameters.
		- Added Argument Checks (where missing) for the Properties and 
		throw the correct exception on error.
		- Modified SetDefaultParameters() to make sure that the parameters
		are all reset to default values everytime it is called.
		- Modified SetProperties() to take into account the order of the 
		keywords in the ConnectionString.

	SqlConnection Fixes for the failing sqlserver connected-mode testcases 
	in ProviderTest/System.Data.SqlClient/SqlConnectionTest.cs

2005-09-21 Senganal T <tsenganal@novell.com>

	* SqlTransaction.cs : Modifed the Rollback() method, so that
	connection can be used for another transaction after the previous
	transaction is rolled back. fixes bug 75904

2005-09-02 Umadevi S <sumadevi@novell.com>
	
	* Removed SqlResultSet.cs file

2005-08-26  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlConnection.cs (Open): enable sp_reset_connection.

2005-08-25  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommandBuilder.cs: BuildInformation (): continue on columns
	who don't have basetablename.

2005-08-12  Daniel Morgan <danielmorgan@verizon.net>

	* SqlCommandBuilder.cs: update command builder based on
	OdbcCommandBuilder latest changes to fix regression 
	of bug 75552
	
2005-08-05  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommandBuilder.cs: Set SourceVersion property to the created
	parameters as it is used by the Adapter's Update method.

2005-07-22  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommandBuilder.cs, SqlParameterCollection.cs,
	SqlConnection.cs, SqlParameter.cs:
	- updated attributes & attribute descriptions to match with
	masterinfos.

2005-07-16  Daniel Morgan <danielmorgan@verizon.net>

	* SqlCommandBuilder.cs: CreateUpdateCommand should get the current value, not
	the orginal value when setting one of the SET variables

2005-07-15  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommandBuilder.cs:
	- set_DataAdapter: unsubscribe event if DataAdapter is reset.
	- CreateInsertCommand, CreateUpdateCommand, CreateDeleteCommand:
	if column mapping is missing, use the source column name. use
	proper version to get the data. 
	- RowUpdatingHandler: set status to continue to actually process
	the query.

2005-07-04  Ben Maurer  <bmaurer@ximian.com>

	* SqlError.cs: Patch from dezelin@gmail.com to fix serialization.

2005-06-29  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlConnection.cs: Open (): catch TdsInternalException and throw
	SqlException.
	* SqlException.cs: code re-organised to pass message as well with
	the exception.

2005-06-23  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlConnectionStringBuilder.cs: simplified multiple keyword
	mappings and allowed-key checking. fixed Item, Remove,
	ContainsKey, ShoudSerialize, TryGetValue implementations.

2005-06-21  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlConnectionStringBuilder.cs: Connection String Builder class
	for SqlClient Data Provider.

2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SqlParameter.cs: moved the 'using S.D.SqlTypes' out of NET_2_0. Fixes
	the build.

2005-06-01  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlParameter.cs: Parameter's value can be SqlTypes. Convert to
	framework type to pass to TDS layer. Fixes bug #75044.

2005-05-24 Umadevi S <sumadevi@novell.com>
	* fixed some 2.0 and 1.0 specific fields/attributes for various classes.
	* Added SqlClientMetaDataCollectionNames.cs, Implemented some 2.0
	properties for SqlParameterCollection for the bulkcopy feature.
	

2005-05-20 Kornél Pál <http://www.kornelpal.hu/>
	
	* Fixed Bug #53169 - SqlDataReader incorrectly returns bigint as decimal
		Note: The fix works around the limitations of TDS 7.0 to avoid this
		difference between Mono and .NET Framework TDS 8.0 should be used instead.

2005-05-20 Umadevi S <sumadevi@novell.com>
	
	* Fixed Bug 74948 - SqlParameter also takes DBNull Value.
		Correct some attributes stuff of 1.1 and 2.0 for SqlParameter.cs

2005-05-20 Umadevi S <sumadevi@novell.com>

	* Continuing on implementation for bulkcopy and notification
		Added files SqlNotificationEventArgs.cs, OnChangeEventHandler.cs
		Modified SqlRowUpdatingEventArgs.cs

2005-05-19 Umadevi S <sumadevi@novell.com>
	
	* For implementation of bulkcopy and notifications added files
		SqlBulkCopyOptions.cs,SqlBulkCopyColumnMapping.cs,SqlNotificationAuthType.cs
		SqlNotificationTransports.cs,SqlRowsCopiedEventArgs.cs, SqlRowsCopiedEventHandler.cs

2005-05-19  Umadevi S <sumadevi@novell.com>

	*  Corrected types,enum values of SqlNotificationType,SqlNotificationSource,
		SqlNotificationInfo and added new method in SqlRowUpdatingEventArgs.cs
	(For implementation of bulkcopy/notifications)

2005-04-19  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlDataReader.cs: NextResult (): Re-create schema table for each
	result set. don't re-use, as it may be referenced from somewhere.

2005-04-07  Sureshkumar T  <tsureshkumar@novell.com>
	    Ankit Jain     <radical@corewars.org>

	* SqlConnection.cs: Implemented additional connection string
	property "Asynchronous Processing".

	* SqlCommand.cs: Implemented Asynchronous command execution API.

	* SqlAsyncState.cs: A internal state object for asynchronous
	operations.

	* SqlAsyncResult.cs: Added. Class to hold result for asynchronous
	queries.

2005-03-28  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommand.cs: Execute: Add a semicolon at the end of
	CommandText. Multiple semicolon's are not being complained.

	fixes bug #74134.

2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SqlConnection.cs: added a finalizer for correct implementation of the
	IDisposable pattern.

2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SqlException.cs: make it serialization-compatible with MS. Patch by
	Aleksandar Dezelin. Closes bug #73596.

2005-03-08  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlDataReader.cs: Call base constructor with CommandBehavior
	parameter instead of passing DbCommand object. The internal base
	class with DbCommand Parameter is removed.

2005-03-07  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommand.cs : Set CommandBehavior on
	ExecuteReader,ExecuteScalar,ExecuteNonQuery. This is used in
	CloseDataReader.

	This fixes bug #73252.

2005-03-03  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlClientFactory.cs: While creating command, create using
	DbConnectionFactory as DbConnectionBase.CreateDbCommand needs to
	have a connection factory.

	* SqlConnection.cs: Added an internal constructor which takes
	DbConnectionFactory.

	* SqlConnectionFactory.cs: Added. Concrete class for abstract
	factory DbConnectionFactory.

2005-02-22  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlDataReader.cs: GetBytes: return the length of the data if
        output buffer is null. if not, copy the values to buffer and
        return the bytes actually read.

2005-02-02  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlConnection.cs: 
	- Database: return db name from database if connection open,
	otherwise take from connection string.
	- Set default values for parameters in the constructor itself.
	- Dangling else problem with Close method.
	- reset values of parms (TdsConnectionParameters) rather setting
	to null.
	- set disposed to false in Open method
	- finally call base.Dispose in Dispose (bool)

	Fixes nunit regressions SqlConnectionTest:DefaultConnectionValues
	and SqlConnectionTest:DatabaseSynonyms.	

2005-01-27  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommand.cs (DeriveParameters): Change parameter name to
	"procedure_name".
	* SqlParameter.cs (SqlParameter (object [])) : call default
	constructor to create Tds.Metaparameter.

	fixes bug #63122.

2005-01-03  Sureshkumar T  <tsureshkumar@novell.com>

	* SqlCommand.cs: Fixed bug #68973. Reset Tds.RecordsAffected to 0
	for each execute statement.
	
2004-11-25  Sureshkumar T  <tsureshkumar@novell.com>

	These changes are for 2.0 profile only. These changes implement
	the generic data base access technique using Provider Factory
	Implementation. These classes need to be dervided from abstract
	base classes so that the corresponding factory classes are
	created when calling CreateCommand, CreateParameter, etc.
	
	* SqlClientFactory.cs: Provider Factory class  Implementaion for SqlServer
	* SqlParameter.cs: Change base classes and override methods.
	* SqlParameterCollection.cs:  Change base classes and override methods.
	* SqlTransaction.cs:  Change base classes and override methods.
	* SqlDataSourceEnumerator.cs: DataSource Enumerator stubs.
	* SqlDataReader.cs: Change base classes and override methods.
	* SqlConnection.cs: Change base classes and override methods.
	* SqlCommandBuilder.cs: Change base classes and override methods.
	* SqlCommand.cs: Change base classes and override necessary methods.

2004-10-14 Umadevi S <sumadevi@novell.com>
	* SqlCommand.cs - Implemented the clone method correctly.
	 (fixed bug 67301)

2004-10-06 Umadevi S <sumadevi@novell.com>
	* ISqlNoticationReceiver.cs - changed namespace
	* Added files SqlNotificationType.cs, SqlNotificationInfo.cs, SqlNotificationSource.cs

2004-09-24  Umadevi S <sumadevi@novell.com>
	* SqlTransaction.cs - Dispose will not call rollback incase the transaction is not open.

2004-09-14  Sebastien Pouliot  <sebastien@ximian.com>

	* SqlClientPermission.cs: Added internal constructor accepting an Sql
	ClientPermissionAttribute parameter (using base class protected ctor).
	* SqlClientPermissionAttribute.cs: Copy now use the new SqlClient
	Permission constructor.

2004-09-13  Sebastien Pouliot  <sebastien@ximian.com>

	* SqlClientPermission.cs: Mostly completed (needs tests).
	* SqlClientPermissionAttribute.cs: Completed.

2004-09-02 Umadevi S <sumadevi@novell.com>
	* SqlCommand.cs - ExecuteNonQuery to return -1 incase of executing a storedprocedure

2004-08-16  Gert Driesen <drieseng@users.sourceforge.net>

	* SqlConnection.cs: added TODO on ConnectionString for keywords
	that are not yet implemented. check value of Integrated Security
	keyword, check value of bool keywords, improve error reporting
	for int keywords, added support for the following keyword 
	synonyms : APP, TIMEOUT, NETWORK, PERSISTSECURITYINFO, WSID,
	LANGUAGE, USER. Throw NotImplementedException when encrypt keyword
	is set to true, enlist keyword is set to false or attachdbfilename
	keyword (or one of its synonyms) is set. Added FIXME for PERSIST
	SECURITY INFO keyword, throwing a NotImplementedException here
	would break lots of apps

2004-08-16  Gert Driesen <drieseng@users.sourceforge.net>

	* SqlConnection.cs - spaces to tabs

2004-08-12  Sureshkumar T <tsureshkumar@novell.com>
	* SqlDataReader.cs - In Close method, the remaining resultsets are drained
			     out, to read output parameters & to avoid stream overlap

2004-06-30 Umadevi S <sumadevi@novell.com>
        * SqlCommand.cs : In the Execute Method the commandbehavior parameters were ignored correct
these

2004-06-22  Atsushi Enomoto <atsushi@ximian.com>

	* SqlCommandBuilder.cs : Avoid cast exception caused by DbNull.

2004-06-18 Umadevi S <sumadevi@novell.com>
	* SqlCommand.cs - ExecuteNonQuery returns -1 in all cases except
		insert,update or delete.

2004-06-18 Umadevi S <sumadevi@novell.com>
	* SqlConnection.cs - handled null being passed as a connectionstring
	  - checked for minimal set of parameters in connectionstring.
	  - handled unrecogonized keywords similar to MS.NET

2004-06-17 Umadevi S <sumadevi@novell.com>
	* SqlTransaction.cs - fixed  multiple rollbacks being called causes invalidoperationexception

2004-06-04  Gert Driesen <drieseng@users.sourceforge.net>

	* SqlClientPermission.cs: removed extra CreateInstance
	method

2004-06-02  Gert Driesen <drieseng@users.sourceforge.net>

        * SQLDebugging.cs: added missing attributes, marked ctor
        public to match MS.NET

2004-05-22  Atsushi Enomoto <atsushi@ximian.com>

	* SqlClientPermission.cs : don't use chained obsolete .ctor.

2004-05-20  Gert Driesen (drieseng@users.sourceforge.net)

	*  SqlClientPermissionAttribute.cs: change AllowMultiple and
	Inherited to match .NET

2004-05-20 Umadevi S <sumadevi@novell.com>

        * Fixed bug 58406- implemented the hasrow method, test program used
        to test with the bug report                                                        

2004-05-13  Umadevi S  <sumadevi@novell.com>
	
	*  SqlClientPermission.cs, SqlDataReader.cs - added missing methods with TODO tags
	*  SqlCommand.cs, SqlDataAdapter.cs - implemented ToolboxItemAttribute
	*  SQLDebugging.cs - Added new file with a TODO tag	
	
2004-04-05  Lluis Sanchez Gual  <lluis@ximian.com>

	* SqlConnection.cs: Use connection pool implemented in Mono.Data.Tds.

2004-04-01  Lluis Sanchez Gual  <lluis@ximian.com>

	* SqlDataReader.cs: Null values are now represented with DBNull instances.
	  Deal with this.

2004-03-14  Tim Coleman <tim@timcoleman.com>
	* SqlCommand.cs SqlConnection.cs:
		Changes from two patches by Andres Taylor
		<andres@rotselleri.com>

2004-03-12  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* SqlParameter.cs: DO NOT USE the consts scheme if types can be referenced directly!

2004-01-10  Atsushi Enomoto <atsushi@ximian.com>

	* SqlClientPermission.cs : Fixed NET_2_0 build related to 
	  obsolete attribute problem (see DbDataPermission.cs)

2003-12-28  Tim Coleman <tim@timcoleman.com>
	* SqlResultSet.cs:
		Stubbed out this class.

2003-12-23  Tim Coleman <tim@timcoleman.com>
	* SqlConnection.cs:
		Improved connection string parsing.  See
		System.Data.Common.DbConnectionString for source.

2003-12-21  Tim Coleman <tim@timcoleman.com>
	* SqlConnection.cs:
		Enable Integrated Security

2003-12-19  Tim Coleman <tim@timcoleman.com>
	* ISqlNotificationReceiver.cs SqlResultSet.cs:
		New stubs added
	* SqlClientPermission.cs:
		Fix constructor for 1.2

2003-12-04  John Luke  <jluke@cfl.rr.com>

	* SqlXmlTextReader.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
	fix peek so it checks if it is at the end and also to make sure that if Read()
	advances the position past the end of the localBuffer array, it makes
	a call to GetNextBuffer(). fixes bug #40253 System.IndexOutOfRangeException when
	using SqlCommand.ExecuteXmlReader()

2003-11-20  Joerg Rosenkranz  <JoergR@voelcker.com>

	* SqlConnection (SetDefaultConnectionParameters):
	Changed default value of WORKSTATION ID to reflect real
	host name instead of "localhost".

2003-11-16 Ben Maurer  <bmaurer@users.sourceforge.net>

	* SqlParameterCollection.cs (Clear): Clear needs to take
	the parameter out of the collection so that it can be used
	again.
	(Remove):
	(RemoveAt): Ditto.

2003-10-03  Diego Caravana  <diego@toth.it>

	* SqlCommand.cs: no change.

	* SqlConnection.cs (Close): Added checks for null instance
	variables.

	* SqlParameter.cs (Direction): Now handles parameters of type
	ReturnValue and InputOutput.

	* SqlParameterCollection.cs (IndexOf(string)): Search for
	SqlParameter object in list is done by obtaining ParameterName
	attribute, not directly through list.IndexOf().
	
2003-08-22  Duncan Mak  <duncan@ximian.com>

	* SqlCommand.cs (ExecuteNonQuery): Return
	Connection.Tds.RecordsAffected if it is successful.  Patch from
	Jörg Rosenkranz <joergr@voelcker.com>.

	This is part of a fix to bug #40315.

2003-08-20  Duncan Mak  <duncan@ximian.com>

	* SqlConnectionPool.cs (ReleaseConnection): A patch from Joerg
	Rosenkranz <JoergR@voelcker.com>. Currently, if a connection is
	closed by an external event (network problem, etc.) it is pushed
	back into the connection pool. The next Open call retrieves this
	invalid connection which leads to exceptions when executing
	statements.

	This patch fixes this problem. This closes bug #47429.

2003-07-04  Miguel de Icaza  <miguel@ximian.com>

	* SqlDataReader.cs: Added extra information to the exceptions
	thrown by all the GetXXXX methods.

2003-03-15  Daniel Morgan <danmorg@sc.rr.com>

	* SqlConnection.cs: if Server in the ConnectionString
	is set to "(local", use "localhost" as the hostname
	to connect

2003-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SqlException.cs: implemented GetObjectData ().

2003-02-16  Daniel Morgan <danmorg@sc.rr.com>

	* ChangeLog: added this file

	* SqlConnection.cs: - parse data source for 3 possible uses:
	"Server=hostname", 
	"Server=hostname\\instancename", 
	"Server=hostname,port" and open the connection based on the
	resulting server name and port.  
	- Added support for named instances
	by discovery of the sql server tcp port via the sql monitor (udp port 1434)
	thanks to Phillip Jerkins (Phillip.Jerkins@morgankeegan.com) contribution.
	Also, thanks to Gonzalo and Tim for their help with timeouts.
	
