Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / System / Data / Odbc / OdbcEnvironmentHandle.cs / 1305376 / OdbcEnvironmentHandle.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
// [....]
//-----------------------------------------------------------------------------
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.Common;
using System.Diagnostics;
using System.Globalization;
using System.Runtime.InteropServices;
using System.Security;
using System.Security.Permissions;
using System.Text;
using System.Threading;
using System.Runtime.Versioning;
namespace System.Data.Odbc {
sealed internal class OdbcEnvironmentHandle : OdbcHandle {
// SxS: this method uses SQLSetEnvAttr to setup ODBC environment handle settings. Environment handle is safe in SxS.
[ResourceExposure(ResourceScope.None)]
[ResourceConsumption(ResourceScope.Process, ResourceScope.Process)]
internal OdbcEnvironmentHandle() : base(ODBC32.SQL_HANDLE.ENV, null) {
ODBC32.RetCode retcode;
//Set the expected driver manager version
//
retcode = UnsafeNativeMethods.SQLSetEnvAttr(
this,
ODBC32.SQL_ATTR.ODBC_VERSION,
ODBC32.SQL_OV_ODBC3,
ODBC32.SQL_IS.INTEGER);
// ignore retcode
//Turn on connection pooling
//Note: the env handle controls pooling. Only those connections created under that
//handle are pooled. So we have to keep it alive and not create a new environment
//for every connection.
//
retcode = UnsafeNativeMethods.SQLSetEnvAttr(
this,
ODBC32.SQL_ATTR.CONNECTION_POOLING,
ODBC32.SQL_CP_ONE_PER_HENV,
ODBC32.SQL_IS.INTEGER);
switch(retcode) {
case ODBC32.RetCode.SUCCESS:
case ODBC32.RetCode.SUCCESS_WITH_INFO:
break;
default:
Dispose();
throw ODBC.CantEnableConnectionpooling(retcode);
}
}
}
}
// 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
- ColorAnimationBase.cs
- Baml2006KeyRecord.cs
- ToolStripHighContrastRenderer.cs
- IFlowDocumentViewer.cs
- InkCollectionBehavior.cs
- XsltInput.cs
- AnnotationResourceCollection.cs
- QuaternionRotation3D.cs
- InnerItemCollectionView.cs
- XmlSchemaAll.cs
- Predicate.cs
- BitmapEffectrendercontext.cs
- CriticalFinalizerObject.cs
- XsdDuration.cs
- StorageFunctionMapping.cs
- WaitHandle.cs
- StrokeIntersection.cs
- WindowsHyperlink.cs
- GroupBox.cs
- TextBlock.cs
- PagerSettings.cs
- ComplexPropertyEntry.cs
- ArrangedElementCollection.cs
- PassportIdentity.cs
- ProfileManager.cs
- UnionCodeGroup.cs
- BuildResult.cs
- StructuralComparisons.cs
- TypeSystem.cs
- MetadataArtifactLoaderResource.cs
- MouseDevice.cs
- StringUtil.cs
- CompilerGlobalScopeAttribute.cs
- SchemaImporterExtension.cs
- FontWeights.cs
- WebZoneDesigner.cs
- Enum.cs
- HighlightVisual.cs
- SequentialWorkflowHeaderFooter.cs
- SharingService.cs
- CollectionBuilder.cs
- MenuAutomationPeer.cs
- RenderingEventArgs.cs
- SourceLineInfo.cs
- OpenTypeLayout.cs
- CompilerGeneratedAttribute.cs
- ArrangedElement.cs
- ForwardPositionQuery.cs
- KernelTypeValidation.cs
- DefaultBinder.cs
- ObjectStateFormatter.cs
- GeometryHitTestResult.cs
- WebPartConnectionsEventArgs.cs
- SiteMapPath.cs
- ColorAnimation.cs
- WeakReference.cs
- StringCollection.cs
- ProxyElement.cs
- SHA1Managed.cs
- DataSourceCacheDurationConverter.cs
- CheckBox.cs
- CapabilitiesSection.cs
- HttpListenerResponse.cs
- XmlWriter.cs
- ProfileSettingsCollection.cs
- Timer.cs
- LineServicesRun.cs
- serverconfig.cs
- QilList.cs
- CollectionViewGroup.cs
- RawUIStateInputReport.cs
- ColorConvertedBitmapExtension.cs
- CorrelationResolver.cs
- ResourceAttributes.cs
- ProfileManager.cs
- DrawingAttributeSerializer.cs
- CredentialCache.cs
- XmlDataCollection.cs
- PeerNameRecordCollection.cs
- CodeEventReferenceExpression.cs
- ListBase.cs
- ImportOptions.cs
- WeakReferenceList.cs
- XmlEntity.cs
- HtmlElementErrorEventArgs.cs
- HandleRef.cs
- RectKeyFrameCollection.cs
- Compiler.cs
- HandlerFactoryCache.cs
- ISFTagAndGuidCache.cs
- ChannelCacheDefaults.cs
- ListViewItemSelectionChangedEvent.cs
- MobileControlDesigner.cs
- HtmlControlDesigner.cs
- ObjectCacheSettings.cs
- XmlCDATASection.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- PointLightBase.cs
- PriorityBinding.cs
- HyperLinkField.cs