DtsConvert.ToConnectionManager Method
Converts a native connection manager to a managed ConnectionManager class. This method is not CLS-compliant.
命名空間: Microsoft.SqlServer.Dts.Runtime
組件: Microsoft.SqlServer.ManagedDTS (in microsoft.sqlserver.manageddts.dll)
語法
'宣告
Public Shared Function ToConnectionManager ( _
connMgr90 As IDTSConnectionManager90 _
) As ConnectionManager
public static ConnectionManager ToConnectionManager (
IDTSConnectionManager90 connMgr90
)
public:
static ConnectionManager^ ToConnectionManager (
IDTSConnectionManager90^ connMgr90
)
public static ConnectionManager ToConnectionManager (
IDTSConnectionManager90 connMgr90
)
public static function ToConnectionManager (
connMgr90 : IDTSConnectionManager90
) : ConnectionManager
參數
- connMgr90
The native connection manager
傳回值
The managed ConnectionManager class
範例
The following code example shows a pipeline component that connects to an ADO.NET connection manager during AcquireConnections, using the ToConnectionManager to convert the connection to a managed connection.
public override void AcquireConnections(object transaction)
{
if (ComponentMetaData.RuntimeConnectionCollection[0].ConnectionManager != null)
{
// Convert the native IDTSConnectionManager90 to the managed ConnectionManager,
// then retrieve the underlying connection through the InnerObject.
ConnectionManager cm = Microsoft.SqlServer.Dts.Runtime.DtsConvert.ToConnectionManager(ComponentMetaData.RuntimeConnectionCollection[0].ConnectionManager);
ConnectionManagerAdoNet cmado = cm.InnerObject as ConnectionManagerAdoNet;
// If the InnerObject is not an ConnectionManagerAdoNet, then
// the cmado object is null.
if( cmado == null )
throw new Exception("The ConnectionManager " + cm.Name + " is not an ADO.NET connection.");
// Get the underlying connection object.
this.oledbConnection = cmado.AcquireConnection(transaction) as OleDbConnection;
if( this.oledbConnection == null )
throw new Exception("The ConnectionManager " + cm.Name + " is not an ADO.NET connection.");
isConnected = true;
}
}
}
Public Overrides Sub AcquireConnections(ByVal transaction As Object)
If Not ComponentMetaData.RuntimeConnectionCollection(0).ConnectionManager Is Nothing Then
' Convert the native IDTSConnectionManager90 to the managed ConnectionManager,
' then retrieve the underlying connection through the InnerObject.
Dim cm As ConnectionManager = Microsoft.SqlServer.Dts.Runtime.DtsConvert.ToConnectionManager(ComponentMetaData.RuntimeConnectionCollection(0).ConnectionManager)
Dim cmado As ConnectionManagerAdoNet = cm.InnerObject as ConnectionManagerAdoNet
' If the InnerObject is not an ConnectionManagerAdoNet, then
' the cmado object is null.
If cmado Is Nothing Then
Throw New Exception("The ConnectionManager " + cm.Name + " is not an ADO.NET connection.")
End If
' Get the underlying connection object.
Me.oledbConnection = cmado.AcquireConnectionCType(as OleDbConnection, transaction)
If Me.oledbConnection Is Nothing Then
Throw New Exception("The ConnectionManager " + cm.Name + " is not an ADO.NET connection.")
End If
isConnected = True
End If
End Sub
}
執行緒安全性
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
平台
開發平台
如需受支援的平台清單,請參閱<安裝 SQL Server 2005 的硬體和軟體需求>。
目標平台
如需受支援的平台清單,請參閱<安裝 SQL Server 2005 的硬體和軟體需求>。
請參閱
參考
DtsConvert Class
DtsConvert Members
Microsoft.SqlServer.Dts.Runtime Namespace