Zweite SQL server-Verbindung innerhalb von UDF mit Update Trigger

Ok, das ist ein bisschen kompliziert, also werde ich versuchen, es so viel wie möglich zu vereinfachen. Ich habe eine SQL server-view mit einem Stattdessen-Trigger. Der Trigger ruft eine CLR UDF (C #) auf, nennt es MyUDF. MyUDF versucht, eine zweite Verbindung mit einer wörtlichen Verbindungszeichenfolge zu öffnen, dh,

using (SqlConnection connection2 = new SqlConnection(newConnString)) { ... 

Ich habe bestätigt, dass die Verbindungszeichenfolge gut ist. Ich habe auch bestätigt, dass die UDF außerhalb des Update Trigger funktioniert. Allerdings, wenn aufgerufen durch die Update Trigger bekomme ich die DotNet Fehler unten angezeigt. Ich habe sogar versucht, DTC nach diesem KB ohne Glück zu aktivieren: http://msdn.microsoft.com/en-us/library/dd327979.aspx

Ich muss die zweite Verbindung aufgrund von permissions öffnen. Die aktuelle Verbindung hat möglicherweise nicht genügend permissions, um die notwendigen Abfragen durchzuführen, damit ich nicht "context connection=true"

Frage: Gibt es einen path, um unter diesen Umständen eine zweite Verbindung zu eröffnen?

Hier ist der DotNet-Fehler (SQL server 2008 Standard, Windows 2008 x86, DotNet 4):

 A .NET Framework error occurred during execution of user-defined routine or aggregate "MyUDF": System.Data.SqlClient.SqlException: Transaction context in use by another session. System.Data.SqlClient.SqlException: at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.TdsExecuteTransactionManagerRequest(Byte[] buffer, TransactionManagerRequestType request, String transactionName, TransactionManagerIsolationLevel isoLevel, Int32 timeout, SqlInternalTransaction transaction, TdsParserStateObject stateObj, Boolean isDelegateControlRequest) at System.Data.SqlClient.SqlInternalConnectionTds.PropagateTransactionCookie(Byte[] cookie) at System.Data.SqlClient.SqlInternalConnection.EnlistNonNull(Transaction tx) at System.Data.SqlClient.SqlInternalConnection.Enlist(Transaction tx) at System.Data.SqlClient.SqlInternalConnectionTds.Activate(Transaction transaction) at System.Data.ProviderBase.DbConnectionInternal.ActivateConnection(Transaction transaction) at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) at System.Data.SqlClient.SqlConnection.Open() at UserDefinedFunctions.MyUDF(SqlString data)