[Access] C#通过COM组件访问Access文件
程序员文章站
2022-05-31 10:51:14
...
说明: 1,采用dynamic调用COM组件,适用于.NET 4.0以上支持dynamic版本的才可以; 2,执行速度不敢恭维,只是因为要用于Silverlight OOB模式中才研究一二; 3,测试环境 .net 4.5 + Silverlight 5.0 + Visual Studio 2013 4,见如下helper类(需引用 using
说明:
1,采用dynamic调用COM组件,适用于.NET 4.0以上支持dynamic版本的才可以;
2,执行速度不敢恭维,只是因为要用于Silverlight OOB模式中才研究一二;
3,测试环境.net 4.5 + Silverlight 5.0 + Visual Studio 2013
4,见如下helper类(需引用using System.Runtime.InteropServices.Automation;):
1 public class SLAccessHelper 2 { 3 private dynamic m_AccessApp;// Access.Application 4 private dynamic m_Database;// Database 5 private dynamic m_Recordset; 6 7 ///8 /// 构造函数 9 /// 10 /// Access是否可见 11 public SLAccessHelper(bool visible) 12 { 13 m_AccessApp = AutomationFactory.CreateObject("Access.Application"); 14 m_AccessApp.Visible = visible; 15 } 16 17 /// 18 /// 打开数据库 19 /// 20 /// Access数据库文件路径 21 /// 是否共享 22 /// 密码 23 public void OpenDb(string filePath, bool exclusive = false, string bstrPassword = "") 24 { 25 m_AccessApp.OpenCurrentDatabase(filePath, exclusive, bstrPassword); 26 m_Database = m_AccessApp.CurrentDb(); 27 } 28 29 /// 30 /// 获取当前数据库中所有表名称集合 31 /// 32 /// 所有表名称集合 33 public Liststring