Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Data / System / Data / Odbc / OdbcConnectionOpen.cs / 1 / OdbcConnectionOpen.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System; using System.Data; using System.Data.Common; using System.Data.ProviderBase; using System.Threading; using SysTx = System.Transactions; namespace System.Data.Odbc { sealed internal class OdbcConnectionOpen : DbConnectionInternal { // Construct from a compiled connection string internal OdbcConnectionOpen(OdbcConnection outerConnection, OdbcConnectionString connectionOptions) { #if DEBUG try { // use this to help validate this object is only created after the following permission has been previously demanded in the current codepath if (null != outerConnection) { outerConnection.UserConnectionOptions.DemandPermission(); } else { connectionOptions.DemandPermission(); } } catch(System.Security.SecurityException) { System.Diagnostics.Debug.Assert(false, "unexpected SecurityException for current codepath"); throw; } #endif OdbcEnvironmentHandle environmentHandle = OdbcEnvironment.GetGlobalEnvironmentHandle(); outerConnection.ConnectionHandle = new OdbcConnectionHandle(outerConnection, connectionOptions, environmentHandle); } internal OdbcConnection OuterConnection { get { OdbcConnection outerConnection = (OdbcConnection)Owner; if (null == outerConnection) throw ADP.InvalidOperation("internal connection without an outer connection?"); // return outerConnection; } } override public string ServerVersion { get { return OuterConnection.Open_GetServerVersion(); } } override protected void Activate(SysTx.Transaction transaction) { OdbcConnection.ExecutePermission.Demand(); } override public DbTransaction BeginTransaction(IsolationLevel isolevel) { return BeginOdbcTransaction(isolevel); } internal OdbcTransaction BeginOdbcTransaction(IsolationLevel isolevel) { return OuterConnection.Open_BeginTransaction(isolevel); } override public void ChangeDatabase(string value) { OuterConnection.Open_ChangeDatabase(value); } override protected DbReferenceCollection CreateReferenceCollection() { return new OdbcReferenceCollection(); } override protected void Deactivate() { NotifyWeakReference(OdbcReferenceCollection.Closing); } override public void EnlistTransaction(SysTx.Transaction transaction) { OuterConnection.Open_EnlistTransaction(transaction); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System; using System.Data; using System.Data.Common; using System.Data.ProviderBase; using System.Threading; using SysTx = System.Transactions; namespace System.Data.Odbc { sealed internal class OdbcConnectionOpen : DbConnectionInternal { // Construct from a compiled connection string internal OdbcConnectionOpen(OdbcConnection outerConnection, OdbcConnectionString connectionOptions) { #if DEBUG try { // use this to help validate this object is only created after the following permission has been previously demanded in the current codepath if (null != outerConnection) { outerConnection.UserConnectionOptions.DemandPermission(); } else { connectionOptions.DemandPermission(); } } catch(System.Security.SecurityException) { System.Diagnostics.Debug.Assert(false, "unexpected SecurityException for current codepath"); throw; } #endif OdbcEnvironmentHandle environmentHandle = OdbcEnvironment.GetGlobalEnvironmentHandle(); outerConnection.ConnectionHandle = new OdbcConnectionHandle(outerConnection, connectionOptions, environmentHandle); } internal OdbcConnection OuterConnection { get { OdbcConnection outerConnection = (OdbcConnection)Owner; if (null == outerConnection) throw ADP.InvalidOperation("internal connection without an outer connection?"); // return outerConnection; } } override public string ServerVersion { get { return OuterConnection.Open_GetServerVersion(); } } override protected void Activate(SysTx.Transaction transaction) { OdbcConnection.ExecutePermission.Demand(); } override public DbTransaction BeginTransaction(IsolationLevel isolevel) { return BeginOdbcTransaction(isolevel); } internal OdbcTransaction BeginOdbcTransaction(IsolationLevel isolevel) { return OuterConnection.Open_BeginTransaction(isolevel); } override public void ChangeDatabase(string value) { OuterConnection.Open_ChangeDatabase(value); } override protected DbReferenceCollection CreateReferenceCollection() { return new OdbcReferenceCollection(); } override protected void Deactivate() { NotifyWeakReference(OdbcReferenceCollection.Closing); } override public void EnlistTransaction(SysTx.Transaction transaction) { OuterConnection.Open_EnlistTransaction(transaction); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GeneralTransform3D.cs
- BinaryReader.cs
- ErrorTableItemStyle.cs
- SelectedGridItemChangedEvent.cs
- LayoutDump.cs
- XhtmlBasicPageAdapter.cs
- GridViewSelectEventArgs.cs
- RegisteredScript.cs
- VisualTreeHelper.cs
- WindowsFormsLinkLabel.cs
- EventLogWatcher.cs
- NamespaceInfo.cs
- DataServiceQuery.cs
- SmiSettersStream.cs
- UnsafeNativeMethodsTablet.cs
- StringUtil.cs
- WindowsMenu.cs
- CryptoApi.cs
- BooleanKeyFrameCollection.cs
- ValueProviderWrapper.cs
- Soap.cs
- Point.cs
- BitmapEffect.cs
- ObjectConverter.cs
- IxmlLineInfo.cs
- MsmqReceiveParameters.cs
- ResourceProperty.cs
- RequestBringIntoViewEventArgs.cs
- ConfigXmlWhitespace.cs
- ObjectQueryProvider.cs
- safesecurityhelperavalon.cs
- XamlWriter.cs
- Memoizer.cs
- AnimatedTypeHelpers.cs
- XmlSchemaAnnotated.cs
- XmlSchemas.cs
- SqlDataReader.cs
- XmlStreamStore.cs
- OleDbParameter.cs
- SimpleHandlerFactory.cs
- DataBinder.cs
- securitymgrsite.cs
- Pointer.cs
- ConstructorNeedsTagAttribute.cs
- Span.cs
- Binding.cs
- StickyNoteAnnotations.cs
- BrowserCapabilitiesCompiler.cs
- WindowsAuthenticationModule.cs
- SplitterCancelEvent.cs
- TypeGeneratedEventArgs.cs
- OnOperation.cs
- DateTimeOffsetStorage.cs
- ResponseStream.cs
- LicenseProviderAttribute.cs
- QueryHandler.cs
- XmlBinaryReader.cs
- CdpEqualityComparer.cs
- DelegatingConfigHost.cs
- Stylus.cs
- ContentPropertyAttribute.cs
- SoapIncludeAttribute.cs
- ChameleonKey.cs
- LambdaCompiler.ControlFlow.cs
- EventLevel.cs
- CodeCommentStatement.cs
- VirtualPathProvider.cs
- DataServiceRequestArgs.cs
- EntityDataSourceDataSelection.cs
- PerformanceCounterPermission.cs
- TextElementCollection.cs
- ThemeableAttribute.cs
- LogExtentCollection.cs
- QilParameter.cs
- PixelShader.cs
- XXXOnTypeBuilderInstantiation.cs
- ContextStaticAttribute.cs
- FlowDocumentFormatter.cs
- ConfigurationLocation.cs
- NameValueFileSectionHandler.cs
- TextRangeProviderWrapper.cs
- NamespaceInfo.cs
- VerificationException.cs
- DeflateInput.cs
- HotSpotCollection.cs
- DotExpr.cs
- MeasureItemEvent.cs
- XmlSchemaSimpleTypeUnion.cs
- TextParagraphProperties.cs
- InputBindingCollection.cs
- RichTextBoxAutomationPeer.cs
- ReceiveContent.cs
- ImagingCache.cs
- OleTxTransaction.cs
- DataGridViewColumnConverter.cs
- ListItemCollection.cs
- IDispatchConstantAttribute.cs
- DataGridColumnCollection.cs
- XmlDesigner.cs
- CompressedStack.cs