当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ACCESS数据库访问组件(三)

ASP.NET
Visual Studio.Net 内幕(7)
.Net 2.0 原汁原味读取注册表
ASP.NET 2.0中预设的cookie
ASP.NET:一段比较经典的多线程学习代码
ASP.NET2.0服务器控件之自定义状态管理
Asp.net给站点某目录增加Aspnet用户
ASP.NET技巧:请求网址并解析返回的html
在Asp.net用C#建立动态Excel
ASP.NET2.0:页面中链入的CSS、js文件带中文时需注意
ASP.NET技巧:数据岛出到Excel最为简易的方法
第一次用.net2.0 LOGIN登陆控件的困惑和解决方法
在ASP.net中保存/取出图片入/从SQL数据库
ASP.NET技巧:做个DataList可分页的数据源
在.NET中利用委托实现窗体间通信
在.NET2.0中使用自定义事务操作
解决 ASP.NET中目录访问权限的问题
ASP.Net防止刷新自动触发事件的解决方案
白刃之战:PHP vs. ASP.NET(节选)-架构比较
C#中使用SendMessage
提取HTML代码中文字的C#函数

ASP.NET 中的 ACCESS数据库访问组件(三)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 219 ::
收藏到网摘: n/a


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; } }}