Executando consultas SQL usando o método ExecuteXMLReader
Aplica-se a: SQL Server Banco de Dados SQL do Azure
Em vez de usar o método ExecuteToStream, você pode usar o método ExecuteXmlReader do objeto SqlXmlCommand para executar comandos. Esse método retorna um objeto XmlReader que pode ser usado para processamento adicional do resultado (que neste exemplo está imprimindo os nomes de elemento ou atributo e os valores).
Observação
No código, você deve fornecer o nome da instância do Microsoft SQL Server na cadeia de conexão.
using System;
using Microsoft.Data.SqlXml;
using System.IO;
using System.Xml;
class Test
{
static string ConnString = "Provider=SQLOLEDB;Server=(local);database=AdventureWorks2022;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;
}
}
Para testar o aplicativo
Verifique se você tem o Microsoft .NET Framework instalado em seu computador.
Salve o código C# (DocSample.cs) fornecido neste tópico em uma pasta.
Compile o código. Para compilar o código no prompt de comando, use:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.cs
Isso cria um executável (DocSample.exe).
No prompt de comando, execute DocSample.exe.