1。概述
ADOMD.NET是标准的.NET数据提供者,它使用支持 XML for Analysis version 1.1标准的数据提供者连接数据源,使用TCP/IP或 HTTP流传输和接受SOAP请求。数据可以被检索为多为数据格式并使用ADOMD.NET对象模型 。使用ADOMD.NET也可以通过两种方式浏览和操纵元数据:依赖于OLE DB schema rowsets 或ADOMD.NET对象模型。
2。分发
在应用程序中包含ADOMD.NET的安装,安装后程序位于 C:/Program Files/Microsoft.NET/ADOMD/8.0下。
3:主要对象简介
1)AdomdConnection :连接数据源、获取元数据;
2)AdomdCommand:执行MDX查询,返回CellSet或AdomdDataReader 对象;
3)AdomdDataReader:快速有效的读取多维数据方法,如同SqlDataReader;
4) CellSet :多维数据结果集,如同dataset;
5) OlapInfo:表示一个CUBE的元数据信息,是CellSet的一个属性;
6)CubeDef:也表示一个CUBE的源数据信息,它是AdomdConnection的属性;
7)AdomdDataAdapter :实现IDbDataAdapter接口,对客户端应用提供只读支持。
adomd.net引用只需Microsoft.AnalysisServices.AdomdClient.dll ,既提供连接支持,也提供元数据存取;
从数据源检索元数据通过AdomdConnection的Cubes属性;
CellSet不再用于查询结果,而用于缓存查询结果;
4)在ADOMD。NET中,Position对象或内部支持,CellSet存取通过Set和Tuple对象;
5)增加了一些新的类,提供更好的错误捕获,更好的封装数据和元数据。使用OlapInfo, AxesInfo, CellsInfo, 和CubesInfo 类检索cellset的元数据,代替了CubeDef 类。CubeDef 仍然使用,用于从多维数据源检索元数据。
5:ADOMD.NET编程
1)核心组件:
AdomdCommand:执行语句;
AdomdConnection:多维数据库连接;
AdomdDataAdapter:产生平面结果集;
AdomdDataReader:产生只读结果集;
2)其它组件:
用于数据和元数据的对象,包括异常处理、轴、位置、成员、维、层次、级别、量、集合、元组等信息;
3)连接方式与断连接方式的数据存取
AdomdDataReader和AdomdDataAdapter用于连接方式的数据存取;
CellSet :两者都可以;
ADOMD.net 不支持DataSet;
4)连接数据源
<1>准备工作:
建立连接的必须条件:
Microsoft .NET Framework 类库 1.0 SP2 或者以上;
MSXML 4.0 或者以上;此为必须产品;
否则连接会提示错误:“无法建立连接。请确保服务器正在运行。”
如果访问Microsoft Analysis Services 2000则AS2000 OLE DB provider必须;
如果使用XML for Analysis provider作为驱动,则需要安装一个 符合 XML for Analysis version 1.1标准的XML for Analysis provide例如 Microsoft XML for Analysis Provider ;
ADOM.NET提供内部的IXMLA驱动,包含在adomd.net中,和XML for Analysis provider提供相同的功能。
<2>连接字符串
主要设置:
Provider:缺省为msolap;
Data Source:服务器;
Catalog:数据库;
ConnectTo:连接方法,8.0,9.0,default;
Integrated Security:安全模式SSPI或Basic,后者需要用户和密码;
UserName :用户;
Password:密码;
典型的连接串:
使用:IXMLA驱动
string strCnn=“Data Source=sqlsrv;Catalog=foodmart 2000;ConnectTo=8.0;Integrated Security=SSPI“;
使用:XML for Analysis provider驱动;
string strCnn=“Data Source=sqlsrv;Catalog=foodmart 2000;ConnectTo=8.0;Integrated Security=SSPI“;
另外查询Cubs的语句当然使用MDX语句,希望这个对你有帮助,使用AdomdCommand执行mdx查询
与sqlCommand类似的
分发ADOMD.NET
安装ADOMD.NET setup文件,如果没有安装文件,就到微软的下载中心去找吧!里面还有ADOMD.NET Sample Application,可以好好学习学习。安装后程序位于 x
:/Program Files/Microsoft.NET/ADOMD/8.0下。
ADOMD.NET对象体系结构
主要对象简介:
AdomdConnection: 连接多维数据源和多维数据源的元数据。例如:可以通过AdomdConnection连接SQL Server 2000 Analysis Services的本地立方(.cub)文件,并获取多维数据源的立方的属性以获取它的元数据。AdomdConnection对象继承IDbConnection接口。
AdomdCommand: 执行MDX查询,返回CellSet或AdomdDataReader 对象。当与多维数据源建立连接后,就需要通过AdomdCommand对象执行MDX语句,并以CellSet或者AdomdDataReader对象的形式返回结果。
AdomdDataReader:快速有效的读取多维数据方法。AdomdDataReader继承IDbDataAdapter 接口,通过执行AdomdCommand对象的Execute或者ExecuteCellSet方法获取结果。
CellSet :多维数据结果集。通过执行AdomdCommand对象的Execute或者ExecuteCellSet方法返回的MDX查询语句的结果。一旦AdomdCommand返回一个CellSet对象,我们就可以查看包含在CellSet中的多维数据集。CellSet常用于多维数据集需要缓存或者更新的时候。
以上列举出了一些最常用的类,此外,还有其它的一些对象:
OlapInfo : 表示一个CUBE的元数据信息,是CellSet的一个属性;
CubeDef : 也表示一个CUBE的源数据信息,它是AdomdConnection的属性;