XmlReader kullanarak veri alma
The XmlReader class, part of the System.Xml namespace for the Microsoft .NET Framework Class Library, is similar to the AdomdDataReader class in that the XmlReader class also provides fast, non-cached, forward-only access to data.Verileri kullanarak, bellek içi, Analitik bir görünüm için gerek ise CellSet nesnesi, XmlReader nesne xml verileri, özellikle büyük miktarda veri almak için mükemmelÇünkü XmlReader veri akışları, XmlReader almak ve durum Eğer olduğu gibi veri arayan için sunduğu önce tüm verileri önbelleğe sahip değil bir CellSet nesneyi dönüştürmek için kullanılan XML for Analysis yanıt bir analitik nesne modeli gösterimi.
The XmlReader class provides direct access to the XML for Analysis response received by ADOMD.NET when the ExecuteXmlReader method of the AdomdCommand object is called.Alınan verileri ham xml olduğu için veri ve meta veriler el ile ayrıştıracaktır.Veriler alındıktan hemen sonra XmlReader nesnesini kapalı.
Veri ve meta veri alma
Kullanmak için XmlReader class veri almak için aşağıdaki adımları izleyin:
Yeni bir oluşturmak örnek nesnesi.
Yeni bir oluşturmak için örnek , XmlReader , sınıf, çağrı Execute veya ExecuteXmlReader yöntem, AdomdCommand nesne.
Verileri almak.
Komut sorguyu çalıştırır ve döner sonra bir XmlReader, gereken ayrıştırma veri ve meta veriler.xml verileri ve meta verileri tarafından kullanılan yerel formatında sunulan XML for Analysis sağlayıcı.Çoğu XML for Analysis sağlayıcıları, doğal biçimidir MDDataSet biçimi.The MDDataSet format provides both data and metadata for cellsets in a well-structured format.Hakkında daha fazla bilgi için MDDataSet biçimlendirmek için bkz: XML for Analysis belirtimine.
Okuyucu kapatın.
Her zaman çağırmalıdır Close yöntem ile işiniz bittiğinde XmlReader nesne.Sırada bir XmlReader olan Aç, XmlReader , özel kullanıma sahip AdomdConnection nesne çalıştırılacak kullanıldıkomut. Kullanarak, herhangi bir komut çalıştırmak mümkün olmayacak AdomdConnection, dahil oluşturma başka XmlReader ya da AdomdDataReaderkadar özgün kapatın, XmlReader.
Örnek XmlReader değerinden veri alma
Aşağıdaki örnek, bir komutu çalıştırır ve veri olarak alır bir XmlReader, çıktısını almak için dosyasının içeriğikonsol.
void OutputDataWithXML()
{
//Open a connection to the local server.
AdomdConnection conn = new AdomdConnection("Data Source=localhost");
conn.Open();
//Create a command to retrieve the data.
AdomdCommand cmd = new AdomdCommand(@"WITH MEMBER [Measures].[FreightCostPerOrder] AS
[Measures].[Reseller Freight Cost]/[Measures].[Reseller Order Quantity],
FORMAT_STRING = 'Currency'
SELECT [Geography].[Geography].[Country].&[United States].Children ON ROWS,
[Date].[Calendar].[Calendar Year] ON COLUMNS
FROM [Adventure Works]
WHERE [Measures].[FreightCostPerOrder]", conn);
//Execute the command, retrieving an XmlReader.
System.Xml.XmlReader reader = cmd.ExecuteXmlReader();
//Do something with the reader: Parse data, Parse metadata,
// Save for later loading into CellSet, etc.
Console.WriteLine(reader.ReadOuterXml());
//Close the reader, then the connection
reader.Close();
conn.Close();
//Await user input.
Console.ReadLine();
}