diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj index 4a1e9a7742..279793b177 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj @@ -256,6 +256,9 @@ Microsoft\Data\SqlClient\SqlQueryMetadataCache.cs + + Microsoft\Data\SqlClient\SqlReferenceCollection.cs + Microsoft\Data\SqlClient\SqlRowUpdatedEvent.cs @@ -532,7 +535,6 @@ - diff --git a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj index d1443d0754..08da4a1629 100644 --- a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj +++ b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj @@ -327,6 +327,9 @@ Microsoft\Data\SqlClient\SqlQueryMetadataCache.cs + + Microsoft\Data\SqlClient\SqlReferenceCollection.cs + Microsoft\Data\SqlClient\SqlRowUpdatedEvent.cs @@ -500,7 +503,6 @@ - diff --git a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlInternalConnection.cs b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlInternalConnection.cs index bb719f3f20..be0456685e 100644 --- a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlInternalConnection.cs +++ b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlInternalConnection.cs @@ -708,17 +708,6 @@ internal SqlDataReader FindLiveReader(SqlCommand command) return reader; } - internal SqlCommand FindLiveCommand(TdsParserStateObject stateObj) - { - SqlCommand command = null; - SqlReferenceCollection referenceCollection = (SqlReferenceCollection)ReferenceCollection; - if (null != referenceCollection) - { - command = referenceCollection.FindLiveCommand(stateObj); - } - return command; - } - static internal TdsParser GetBestEffortCleanupTarget(SqlConnection connection) { if (null != connection) diff --git a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs deleted file mode 100644 index 552ba0aa3e..0000000000 --- a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs +++ /dev/null @@ -1,84 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System.Diagnostics; -using Microsoft.Data.ProviderBase; - -namespace Microsoft.Data.SqlClient -{ - sealed internal class SqlReferenceCollection : DbReferenceCollection - { - internal const int DataReaderTag = 1; - internal const int CommandTag = 2; - internal const int BulkCopyTag = 3; - - override public void Add(object value, int tag) - { - Debug.Assert(DataReaderTag == tag || CommandTag == tag || BulkCopyTag == tag, "unexpected tag?"); - Debug.Assert(DataReaderTag != tag || value is SqlDataReader, "tag doesn't match object type: SqlDataReader"); - Debug.Assert(CommandTag != tag || value is SqlCommand, "tag doesn't match object type: SqlCommand"); - Debug.Assert(BulkCopyTag != tag || value is SqlBulkCopy, "tag doesn't match object type: SqlBulkCopy"); - - base.AddItem(value, tag); - } - - internal void Deactivate() - { - base.Notify(0); - } - - internal SqlDataReader FindLiveReader(SqlCommand command) - { - if (command == null) - { - // if null == command, will find first live datareader - return FindItem(DataReaderTag, (dataReader) => (!dataReader.IsClosed)); - } - else - { - // else will find live datareader assocated with the command - return FindItem(DataReaderTag, (dataReader) => ((!dataReader.IsClosed) && (command == dataReader.Command))); - } - } - - // Finds a SqlCommand associated with the given StateObject - internal SqlCommand FindLiveCommand(TdsParserStateObject stateObj) - { - return FindItem(CommandTag, (command) => (command.StateObject == stateObj)); - } - - override protected void NotifyItem(int message, int tag, object value) - { - Debug.Assert(0 == message, "unexpected message?"); - Debug.Assert(DataReaderTag == tag || CommandTag == tag || BulkCopyTag == tag, "unexpected tag?"); - - if (tag == DataReaderTag) - { - Debug.Assert(value is SqlDataReader, "Incorrect object type"); - var rdr = (SqlDataReader)value; - if (!rdr.IsClosed) - { - rdr.CloseReaderFromConnection(); - } - } - else if (tag == CommandTag) - { - Debug.Assert(value is SqlCommand, "Incorrect object type"); - ((SqlCommand)value).OnConnectionClosed(); - } - else if (tag == BulkCopyTag) - { - Debug.Assert(value is SqlBulkCopy, "Incorrect object type"); - ((SqlBulkCopy)value).OnConnectionClosed(); - } - } - - override public void Remove(object value) - { - Debug.Assert(value is SqlDataReader || value is SqlCommand || value is SqlBulkCopy, "SqlReferenceCollection.Remove expected a SqlDataReader or SqlCommand or SqlBulkCopy"); - - base.RemoveItem(value); - } - } -} diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs b/src/Microsoft.Data.SqlClient/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs similarity index 100% rename from src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs rename to src/Microsoft.Data.SqlClient/src/Microsoft/Data/SqlClient/SqlReferenceCollection.cs