Выполнение SQL-запросов с использованием метода ExecuteXMLReader
Вместо использования метода ExecuteToStream для выполнения команд можно использовать метод ExecuteXmlReader объекта SqlXmlCommand. Этот метод возвращает объект XmlReader, который можно использовать для дальнейшей обработки результата (которая в данном примере выводит имена и значения элементов и атрибутов).
Примечание |
---|
В коде необходимо задать имя экземпляра Microsoft SQL Server в строке соединения. |
using System;
using Microsoft.Data.SqlXml;
using System.IO;
using System.Xml;
class Test
{
static string ConnString = "Provider=SQLOLEDB;Server=(local);database=AdventureWorks2012;Integrated Security=SSPI";
public static int testParams()
{
SqlXmlParameter p;
XmlReader Reader;
XmlTextWriter tw;
SqlXmlCommand cmd = new SqlXmlCommand(ConnString);
cmd.CommandText = "select FirstName, LastName from Person.Person where LastName = ? For XML Auto";
p = cmd.CreateParameter();
p.Value = "Achong";
Reader = cmd.ExecuteXmlReader();
tw = new XmlTextWriter(Console.Out);
Reader.MoveToContent();
tw.WriteNode(Reader, false);
tw.Flush();
tw.Close();
Reader.Close();
return 0;
}
static int Main(string[] args)
{
testParams();
return 0;
}
}
Тестирование приложения
Убедитесь, что на компьютере установлена платформа Майкрософт.NET Framework.
Сохраните код C# (DocSample.cs), который в данном разделе находится в папке.
Скомпилируйте код. Чтобы скомпилировать код из командной строки, введите следующую команду.
csc /reference:Microsoft.Data.SqlXML.dll DocSample.cs
Будет создан исполняемый файл (DocSample.exe).
Запустите файл DocSample.exe из командной строки.