Menjalankan File Templat dengan Menggunakan Properti CommandStream
Berlaku untuk:Database SQL ServerAzure SQL
Contoh ini menggambarkan bagaimana file templat yang terdiri dari kueri SQL atau XPath dapat ditentukan dengan menggunakan properti CommandStream dari objek SqlXmlCommand. Dalam aplikasi ini, FileStreamobject dibuka untuk file perintah, dan aliran file ditetapkan sebagai CommandStream yang dijalankan.
Dalam contoh berikut, properti CommandType ditentukan sebagai SqlXmlCommandType.Template (bukan sebagai TemplateFile).
Ini adalah contoh templat XML:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
<sql:query>
SELECT TOP 2 ContactID, FirstName, LastName
FROM Person.Contact
FOR XML AUTO
</sql:query>
</ROOT>
Ini adalah contoh aplikasi C#. Untuk menguji aplikasi, simpan templat (TemplateFile.xml) lalu jalankan aplikasi. Aplikasi menjalankan kueri yang ditentukan dalam templat XML dan menampilkan dokumen XML yang dihasilkan di layar.
Catatan
Dalam kode, Anda harus memberikan nama instans Microsoft SQL Server dalam string koneksi.
using System;
using Microsoft.Data.SqlXml;
using System.IO;
class Test
{
static string ConnString = "Provider=SQLOLEDB;Server=(local);database=AdventureWorks;Integrated Security=SSPI";
public static int testParams()
{
//Stream strm;
MemoryStream ms = new MemoryStream();
StreamWriter sw = new StreamWriter(ms);
ms.Position = 0;
SqlXmlCommand cmd = new SqlXmlCommand(ConnString);
cmd.CommandStream = new FileStream("TemplateFile.xml", FileMode.Open, FileAccess.Read);
cmd.CommandType = SqlXmlCommandType.Template;
using (Stream strm = cmd.ExecuteStream())
{
using (StreamReader sr = new StreamReader(strm)){
Console.WriteLine(sr.ReadToEnd());
}
}
return 0;
}
public static int Main(String[] args)
{
testParams();
return 0;
}
}
Untuk menguji aplikasi
Simpan templat XML (TemplateFile.xml) yang disediakan dalam contoh ini dalam folder.
Simpan kode C# (DocSample.cs) yang disediakan dalam contoh ini di folder yang sama tempat skema disimpan. (Jika Anda menyimpan file di folder yang berbeda, Anda harus mengedit kode dan menentukan jalur direktori yang sesuai untuk skema pemetaan.)
Kompilasi kode. Untuk mengkompilasi kode di prompt perintah, gunakan:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.cs
Ini membuat executable (DocSample.exe).
Pada prompt perintah, jalankan DocSample.exe.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk