Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
Detta exempel illustrerar hur mallfiler som består av SQL- eller XPath-frågor kan specificeras genom att använda egenskapen CommandStream i SqlXmlCommand-objektet. I denna applikation öppnas ett FileStreamobject för en kommandofil, och filströmmen tilldelas som den CommandStream som körs.
I följande exempel specificeras egenskapen CommandType som SqlXmlCommandType.Template (inte som TemplateFile).
Detta är exempelmallen för 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>
Detta är exempelapplikationen för C#. För att testa applikationen, spara mallen (TemplateFile.xml) och kör sedan applikationen. Applikationen kör den fråga som anges i XML-mallen och visar det XML-dokument som genereras på skärmen.
Anmärkning
I koden måste du ange namnet på instansen av Microsoft SQL Server i anslutningssträngen.
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;
}
}
Testa programmet
Spara XML-mallen (TemplateFile.xml) som finns i detta exempel i en mapp.
Spara C#-koden (DocSample.cs) som ges i detta exempel i samma mapp där schemat lagras. (Om du lagrar filerna i en annan mapp måste du redigera koden och ange lämplig katalogsökväg för mappningsschemat.)
Komplisera koden. För att kompilera koden i kommandoprompten, använd:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.csDetta skapar en exekverbar fil (DocSample.exe).
Vid kommandoprompten, utför DocSample.exe.