Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Data / System / Data / Common / DBConnection.cs / 2 / DBConnection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data.Common { using System; using System.ComponentModel; using System.Data; #if WINFSInternalOnly internal #else public #endif abstract class DbConnection : Component, IDbConnection { // V1.2.3300 private StateChangeEventHandler _stateChangeEventHandler; protected DbConnection() : base() { } [ DefaultValue(""), RecommendedAsConfigurable(true), RefreshProperties(RefreshProperties.All), ResCategoryAttribute(Res.DataCategory_Data), ] abstract public string ConnectionString { get; set; } [ ResCategoryAttribute(Res.DataCategory_Data), ] virtual public int ConnectionTimeout { get { return ADP.DefaultConnectionTimeout; } } [ ResCategoryAttribute(Res.DataCategory_Data), ] abstract public string Database { get; } [ ResCategoryAttribute(Res.DataCategory_Data), ] abstract public string DataSource { // NOTE: if you plan on allowing the data source to be changed, you // should implement a ChangeDataSource method, in keeping with // the ChangeDatabase method paradigm. get; } ////// The associated provider factory for derived class. /// virtual protected DbProviderFactory DbProviderFactory { get { return null; } } internal DbProviderFactory ProviderFactory { get { return DbProviderFactory; } } [ Browsable(false), ] abstract public string ServerVersion { get; } [ Browsable(false), ResDescriptionAttribute(Res.DbConnection_State), ] abstract public ConnectionState State { get; } [ ResCategoryAttribute(Res.DataCategory_StateChange), ResDescriptionAttribute(Res.DbConnection_StateChange), ] virtual public event StateChangeEventHandler StateChange { add { _stateChangeEventHandler += value; } remove { _stateChangeEventHandler -= value; } } abstract protected DbTransaction BeginDbTransaction(IsolationLevel isolationLevel); public DbTransaction BeginTransaction() { return BeginDbTransaction(IsolationLevel.Unspecified); } public DbTransaction BeginTransaction(IsolationLevel isolationLevel) { return BeginDbTransaction(isolationLevel); } IDbTransaction IDbConnection.BeginTransaction() { return BeginDbTransaction(IsolationLevel.Unspecified); } IDbTransaction IDbConnection.BeginTransaction(IsolationLevel isolationLevel) { return BeginDbTransaction(isolationLevel); } abstract public void Close(); abstract public void ChangeDatabase(string databaseName); public DbCommand CreateCommand() { return CreateDbCommand(); } IDbCommand IDbConnection.CreateCommand() { return CreateDbCommand(); } abstract protected DbCommand CreateDbCommand(); virtual public void EnlistTransaction(System.Transactions.Transaction transaction) { // NOTE: This is virtual because not all providers may choose to support // distributed transactions. throw ADP.NotSupported(); } // these need to be here so that GetSchema is visible when programming to a dbConnection object. // they are overridden by the real implementations in DbConnectionBase virtual public DataTable GetSchema() { throw ADP.NotSupported(); } virtual public DataTable GetSchema(string collectionName) { throw ADP.NotSupported(); } virtual public DataTable GetSchema(string collectionName, string[] restrictionValues ) { throw ADP.NotSupported(); } protected virtual void OnStateChange(StateChangeEventArgs stateChange) { StateChangeEventHandler handler = _stateChangeEventHandler; if (null != handler) { handler(this, stateChange); } } abstract public void Open(); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextEmbeddedObject.cs
- CellParaClient.cs
- RegisteredArrayDeclaration.cs
- ControlCachePolicy.cs
- RadioButton.cs
- WindowAutomationPeer.cs
- CategoryAttribute.cs
- Geometry3D.cs
- TypefaceMap.cs
- ObjectDataSource.cs
- CodeMethodInvokeExpression.cs
- SystemIcons.cs
- ColorMatrix.cs
- DataGridViewHeaderCell.cs
- PhysicalOps.cs
- Pts.cs
- EntitySqlQueryCacheEntry.cs
- Win32SafeHandles.cs
- GCHandleCookieTable.cs
- precedingsibling.cs
- TransactionException.cs
- Membership.cs
- DBCSCodePageEncoding.cs
- entityreference_tresulttype.cs
- EditingContext.cs
- ImageSourceTypeConverter.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- ValidationHelper.cs
- FontDifferentiator.cs
- Perspective.cs
- EdmMember.cs
- LinearKeyFrames.cs
- VirtualPath.cs
- InternalDuplexChannelListener.cs
- UIntPtr.cs
- PropertyEmitter.cs
- Message.cs
- DeobfuscatingStream.cs
- MonthCalendar.cs
- LabelAutomationPeer.cs
- ConfigurationCollectionAttribute.cs
- DbParameterCollectionHelper.cs
- X509CertificateCollection.cs
- RangeExpression.cs
- ToggleButtonAutomationPeer.cs
- HandlerMappingMemo.cs
- QilBinary.cs
- Ray3DHitTestResult.cs
- Menu.cs
- PlatformCulture.cs
- MemoryRecordBuffer.cs
- FrameworkContentElement.cs
- DataGridViewComboBoxColumn.cs
- InvalidAsynchronousStateException.cs
- ItemCollection.cs
- Policy.cs
- CssStyleCollection.cs
- ToolBar.cs
- Suspend.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- UdpConstants.cs
- ADConnectionHelper.cs
- ContentIterators.cs
- unsafenativemethodsother.cs
- ArrangedElement.cs
- DocumentCollection.cs
- Permission.cs
- Enum.cs
- DataSetMappper.cs
- PointLight.cs
- ArgumentNullException.cs
- SecureUICommand.cs
- ProviderCollection.cs
- UTF8Encoding.cs
- Pts.cs
- DataGridViewTextBoxEditingControl.cs
- SiteMapPath.cs
- OdbcDataAdapter.cs
- CopyOfAction.cs
- UnsafeNativeMethods.cs
- ScriptingJsonSerializationSection.cs
- RegexParser.cs
- Convert.cs
- CodeDirectionExpression.cs
- IProvider.cs
- URLBuilder.cs
- CachedFontFace.cs
- CardSpacePolicyElement.cs
- ApplicationFileCodeDomTreeGenerator.cs
- CookieHandler.cs
- WebUtil.cs
- ErrorHandler.cs
- SmtpCommands.cs
- TabPage.cs
- LayoutTableCell.cs
- SystemResourceKey.cs
- MbpInfo.cs
- GregorianCalendarHelper.cs
- BindingBase.cs
- VisualCollection.cs