2 // System.Data.Common.DbConnection
5 // Tim Coleman (tim@timcoleman.com)
7 // Copyright (C) Tim Coleman, 2003
12 using System.ComponentModel;
14 using System.EnterpriseServices;
16 namespace System.Data.Common {
17 public abstract class DbConnection : Component, IDbConnection, IDisposable
21 protected DbConnection ()
25 #endregion // Constructors
29 public abstract string ConnectionString { get; set; }
30 public abstract int ConnectionTimeout { get; }
31 public abstract string Database { get; }
32 public abstract string DataSource { get; }
33 public abstract string ServerVersion { get; }
34 public abstract ConnectionState State { get; }
36 #endregion // Properties
40 protected abstract DbTransaction BeginDbTransaction (IsolationLevel isolationLevel);
43 public DbTransaction BeginTransaction ()
45 throw new NotImplementedException ();
49 public DbTransaction BeginTransaction (IsolationLevel isolationLevel)
51 throw new NotImplementedException ();
54 public abstract void ChangeDatabase (string databaseName);
55 public abstract void Close ();
57 public DbCommand CreateCommand ()
59 return CreateDbCommand ();
62 protected abstract DbCommand CreateDbCommand ();
65 public virtual void EnlistDistributedTransaction (ITransaction transaction)
67 throw new NotImplementedException ();
71 public virtual DataTable GetSchema ()
73 throw new NotImplementedException ();
77 public virtual DataTable GetSchema (string collectionName)
79 throw new NotImplementedException ();
83 public virtual DataTable GetSchema (string collectionName, string[] restrictionValues)
85 throw new NotImplementedException ();
88 IDbTransaction IDbConnection.BeginTransaction ()
90 return BeginTransaction ();
93 IDbTransaction IDbConnection.BeginTransaction (IsolationLevel il)
95 return BeginTransaction (il);
98 IDbCommand IDbConnection.CreateCommand ()
100 return CreateCommand ();
103 public abstract void Open ();
105 #endregion // Methods