Поделиться через


Выполнение 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;
      }
   }

Тестирование приложения

  1. Убедитесь, что на компьютере установлена платформа Майкрософт.NET Framework.

  2. Сохраните код C# (DocSample.cs), который в данном разделе находится в папке.

  3. Скомпилируйте код. Чтобы скомпилировать код из командной строки, введите следующую команду.

    csc /reference:Microsoft.Data.SqlXML.dll DocSample.cs
    

    Будет создан исполняемый файл (DocSample.exe).

  4. Запустите файл DocSample.exe из командной строки.