Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / System / Data / Common / DBConnection.cs / 1305376 / DBConnection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data.Common { using System; using System.ComponentModel; using System.Data; public abstract class DbConnection : Component, IDbConnection { // V1.2.3300 private StateChangeEventHandler _stateChangeEventHandler; protected DbConnection() : base() { } [ DefaultValue(""), #pragma warning disable 618 // ignore obsolete warning about RecommendedAsConfigurable to use SettingsBindableAttribute RecommendedAsConfigurable(true), #pragma warning restore 618 SettingsBindableAttribute(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. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data.Common { using System; using System.ComponentModel; using System.Data; public abstract class DbConnection : Component, IDbConnection { // V1.2.3300 private StateChangeEventHandler _stateChangeEventHandler; protected DbConnection() : base() { } [ DefaultValue(""), #pragma warning disable 618 // ignore obsolete warning about RecommendedAsConfigurable to use SettingsBindableAttribute RecommendedAsConfigurable(true), #pragma warning restore 618 SettingsBindableAttribute(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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WebBrowserBase.cs
- BitmapMetadataBlob.cs
- SessionEndingEventArgs.cs
- SpeakProgressEventArgs.cs
- SafePEFileHandle.cs
- SqlReorderer.cs
- X509CertificateChain.cs
- SingleKeyFrameCollection.cs
- ToolStripArrowRenderEventArgs.cs
- TextSelectionHelper.cs
- StorageComplexTypeMapping.cs
- XmlSchemaAnnotation.cs
- Manipulation.cs
- EventManager.cs
- CurrencyWrapper.cs
- Exceptions.cs
- ContextQuery.cs
- FontWeightConverter.cs
- ToolStripItemEventArgs.cs
- _KerberosClient.cs
- XPathParser.cs
- Ticks.cs
- AssemblyNameProxy.cs
- Single.cs
- RangeValuePatternIdentifiers.cs
- ProtocolsConfigurationHandler.cs
- Model3D.cs
- ReadOnlyCollectionBase.cs
- RoutedEventArgs.cs
- Currency.cs
- StrongName.cs
- Lease.cs
- ParserContext.cs
- PkcsMisc.cs
- XmlSchemaFacet.cs
- FixedSOMPage.cs
- GlyphTypeface.cs
- SQLDecimalStorage.cs
- CodeGen.cs
- AuthorizationContext.cs
- DataTableMapping.cs
- XPathArrayIterator.cs
- ActivationArguments.cs
- ResourceSet.cs
- TcpProcessProtocolHandler.cs
- ValidatorCompatibilityHelper.cs
- ProtocolsConfiguration.cs
- PagesSection.cs
- MemberPathMap.cs
- Transform3DGroup.cs
- TextUtf8RawTextWriter.cs
- MetadataItem.cs
- DesignerActionItem.cs
- XhtmlTextWriter.cs
- RegexFCD.cs
- _NtlmClient.cs
- Message.cs
- Parser.cs
- Utils.cs
- RegisteredExpandoAttribute.cs
- DynamicDocumentPaginator.cs
- CachedFontFamily.cs
- BitmapMetadataBlob.cs
- RSAPKCS1KeyExchangeFormatter.cs
- StylusPointCollection.cs
- CookielessHelper.cs
- RuntimeHelpers.cs
- CollectionViewSource.cs
- DeflateEmulationStream.cs
- StrongNameMembershipCondition.cs
- XPathDocumentBuilder.cs
- FormsAuthenticationTicket.cs
- KeyTime.cs
- XamlHostingSection.cs
- JapaneseCalendar.cs
- JsonClassDataContract.cs
- DesignParameter.cs
- validation.cs
- MouseOverProperty.cs
- ExpressionBuilderCollection.cs
- AsyncSerializedWorker.cs
- Hyperlink.cs
- DataGridViewCellStyle.cs
- SqlLiftIndependentRowExpressions.cs
- AddInIpcChannel.cs
- PasswordBox.cs
- Vector3dCollection.cs
- DependencyPropertyValueSerializer.cs
- SchemaObjectWriter.cs
- NetTcpSecurityElement.cs
- Monitor.cs
- ResourceDictionary.cs
- ISAPIRuntime.cs
- XmlAttributeProperties.cs
- RIPEMD160.cs
- QueueAccessMode.cs
- WebPartEditVerb.cs
- ValidationErrorCollection.cs
- PointCollection.cs
- WorkflowDesigner.cs