使用 ExecuteXMLReader 方法执行 SQL 查询
可以使用 SqlXmlCommand 对象的 ExecuteXmlReader 方法执行命令,而不是使用 ExecuteToStream 方法。 此方法返回一个 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=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;
}
}
测试应用程序
请确保计算机上已安装Microsoft .NET Framework。
将本主题中提供的 C# 代码 (DocSample.cs) 保存在文件夹中。
编译代码。 若要在命令提示符下编译此代码,请使用:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.cs
这将创建一个可执行文件 (DocSample.exe)。
在命令提示符下,执行 DocSample.exe。