Code:
/ DotNET / DotNET / 8.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
- RenderOptions.cs
- ListViewAutomationPeer.cs
- COM2ICategorizePropertiesHandler.cs
- PropertyNames.cs
- Matrix.cs
- MsdtcClusterUtils.cs
- ChtmlMobileTextWriter.cs
- ConfigurationManagerHelperFactory.cs
- EdmProperty.cs
- LinqDataSourceUpdateEventArgs.cs
- WSHttpBinding.cs
- WebPartVerb.cs
- glyphs.cs
- ClientBuildManager.cs
- ContextMenuService.cs
- IdentityReference.cs
- WaitHandle.cs
- x509utils.cs
- RadioButton.cs
- KeyboardNavigation.cs
- PermissionAttributes.cs
- FieldAccessException.cs
- Converter.cs
- HistoryEventArgs.cs
- WindowsScrollBar.cs
- DataGridTextBox.cs
- figurelengthconverter.cs
- odbcmetadatacolumnnames.cs
- PassportAuthentication.cs
- TextTrailingCharacterEllipsis.cs
- HttpRuntimeSection.cs
- XPathEmptyIterator.cs
- BasicViewGenerator.cs
- RightsManagementInformation.cs
- MessageAction.cs
- AutoResetEvent.cs
- KerberosReceiverSecurityToken.cs
- MetadataSection.cs
- DriveNotFoundException.cs
- StateRuntime.cs
- SoapSchemaImporter.cs
- COM2PropertyBuilderUITypeEditor.cs
- NavigationPropertyEmitter.cs
- OutputCacheModule.cs
- AspNetSynchronizationContext.cs
- SafeCryptHandles.cs
- EventTrigger.cs
- XPathNodeList.cs
- XmlSerializerSection.cs
- InlineCategoriesDocument.cs
- BaseDataBoundControl.cs
- WebPartMenuStyle.cs
- ListParaClient.cs
- PreviewPrintController.cs
- DESCryptoServiceProvider.cs
- DragDeltaEventArgs.cs
- ELinqQueryState.cs
- XmlSchemaAny.cs
- DigestTraceRecordHelper.cs
- EventEntry.cs
- documentsequencetextcontainer.cs
- RegionData.cs
- SymLanguageType.cs
- BackgroundFormatInfo.cs
- XmlLanguage.cs
- EntryIndex.cs
- MultiTouchSystemGestureLogic.cs
- MULTI_QI.cs
- BaseUriHelper.cs
- DataGridRelationshipRow.cs
- BrushValueSerializer.cs
- XmlC14NWriter.cs
- Invariant.cs
- XsltQilFactory.cs
- WindowsProgressbar.cs
- SqlTriggerContext.cs
- StringFunctions.cs
- ContentElement.cs
- SerTrace.cs
- SiteMapDataSourceView.cs
- KeyInfo.cs
- Transform.cs
- BindingsCollection.cs
- BrowserTree.cs
- Set.cs
- NestedContainer.cs
- CodeCompiler.cs
- DbModificationCommandTree.cs
- Parser.cs
- ZipIOExtraFieldZip64Element.cs
- ContainerParagraph.cs
- HtmlInputRadioButton.cs
- QilXmlWriter.cs
- WebPermission.cs
- XmlRootAttribute.cs
- MailSettingsSection.cs
- WindowsToolbarAsMenu.cs
- CalculatedColumn.cs
- SendMessageContent.cs
- ProxySimple.cs