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
- ColorConvertedBitmapExtension.cs
- EpmTargetPathSegment.cs
- LockedAssemblyCache.cs
- BitmapPalette.cs
- Knowncolors.cs
- SendActivityDesigner.cs
- ListViewAutomationPeer.cs
- ComboBox.cs
- NumberFunctions.cs
- OleDbParameter.cs
- DataGridViewColumnCollection.cs
- SqlProfileProvider.cs
- PropertyIDSet.cs
- CodeRegionDirective.cs
- IgnoreSectionHandler.cs
- WeakReferenceEnumerator.cs
- DataSourceControlBuilder.cs
- FullTextLine.cs
- XPathDocumentIterator.cs
- CalendarBlackoutDatesCollection.cs
- TreeViewBindingsEditor.cs
- ConfigurationHandlersInstallComponent.cs
- FormsIdentity.cs
- HandlerFactoryCache.cs
- TypedElement.cs
- CriticalExceptions.cs
- MonitoringDescriptionAttribute.cs
- SecurityRuntime.cs
- Hashtable.cs
- ToggleProviderWrapper.cs
- WorkflowShape.cs
- DataGrid.cs
- TableLayoutSettingsTypeConverter.cs
- AttachedAnnotation.cs
- File.cs
- DebugView.cs
- RequestCacheEntry.cs
- ListControlBuilder.cs
- DockPanel.cs
- WhitespaceRuleReader.cs
- DataTableTypeConverter.cs
- ShapingEngine.cs
- SqlUserDefinedAggregateAttribute.cs
- GridPattern.cs
- DataSourceProvider.cs
- KeyedCollection.cs
- DateTimeValueSerializerContext.cs
- XmlElementAttributes.cs
- ApplyTemplatesAction.cs
- CircleHotSpot.cs
- QuadraticBezierSegment.cs
- MetaForeignKeyColumn.cs
- X509DefaultServiceCertificateElement.cs
- RegexCompilationInfo.cs
- TextTreeFixupNode.cs
- RequestDescription.cs
- Column.cs
- ControlValuePropertyAttribute.cs
- DurableDispatcherAddressingFault.cs
- SchemaMapping.cs
- SqlConnectionPoolProviderInfo.cs
- HttpCachePolicyElement.cs
- ToolStripLocationCancelEventArgs.cs
- DetailsViewPageEventArgs.cs
- TableAutomationPeer.cs
- ReadContentAsBinaryHelper.cs
- ElementAction.cs
- DesignerAttribute.cs
- TextParaLineResult.cs
- WebPartTransformerCollection.cs
- ColumnWidthChangingEvent.cs
- XamlClipboardData.cs
- ExplicitDiscriminatorMap.cs
- CodeCommentStatementCollection.cs
- SettingsPropertyNotFoundException.cs
- ScriptBehaviorDescriptor.cs
- ValidatorCompatibilityHelper.cs
- HttpBufferlessInputStream.cs
- PointLightBase.cs
- DesigntimeLicenseContext.cs
- unitconverter.cs
- VerificationException.cs
- DesignParameter.cs
- CodeDomSerializationProvider.cs
- DebugHandleTracker.cs
- KeyInterop.cs
- PropertiesTab.cs
- TdsParserHelperClasses.cs
- EntityClientCacheKey.cs
- ConnectionPoint.cs
- LiteralLink.cs
- UriWriter.cs
- PropertyInfoSet.cs
- SqlDataSourceRefreshSchemaForm.cs
- OleDbConnection.cs
- Int16Animation.cs
- MetadataHelper.cs
- PrintingPermission.cs
- PrimitiveXmlSerializers.cs
- ScrollBarAutomationPeer.cs