【 tulaoshi.com - ASP.NET 】
                             
                             using System;
using System.Data;
using System.Data.OleDb;
using System.Collections;
namespace XLang.VideoOnline.Framework.Database.Access
{
 /// 
 /// Summary description for ACCESS_DataTablesCollection.
 ///  public class DataTablesCollection
 {
 private Database.Access.DataTable[] _tables;
 private int _count;
 public int Count
 {
 get 
 { 
 return _count;
 }
 } 
 public DataTablesCollection(OleDbConnection connection)
 {
 System.Data.DataTable schemaTable = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
 new object[] {null, null, null, "TABLE"});
 _count=schemaTable.Rows.Count+1;
 _tables=new Database.Access.DataTable[_count];
 for(int i=0;i<_count-1;i++)
 {
 _tables[i]=new Database.Access.DataTable(schemaTable.Rows[i][2].ToString());
 }
 _tables[_count-1]=new Database.Access.DataTable("temp");
 }
 public Database.Access.DataTable this [int tableIndex]
 {
 get
 {
 return _tables[tableIndex];
 //return this[tableIndex];
 }
 set
 {
 _tables[tableIndex]=value;
 //this[tableIndex]=value;
 }
 }
 public Database.Access.DataTable this [string tableName]
 {
 get
 {
 return this [NameToIndex(tableName)];
 //return this[tableName];
 }
 set
 {
 this [NameToIndex(tableName)]=value;
 //this[tableName]=value;
 }
 }
 private int NameToIndex(string tableName)
 {
 for(int i=0;i<_tables.Length;i++)
 {
 if(_tables[i].Name.ToUpper()==tableName.ToUpper())
 return i;
 }
 return -1; } }}