Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
azure SQL Database
Tento příklad ilustruje použití vlastnosti ClientSideXml. Aplikace spustí uloženou proceduru na serveru. Výsledek uložené procedury (dvousloupcová řádková sada) je zpracován na straně klienta za účelem vytvoření XML dokumentu.
Následující uložená procedura GetContacts vrací křestní jméno a příjmení zaměstnanců v tabulce Person.Contact v databázi AdventureWorks.
USE AdventureWorks2022;
CREATE PROCEDURE GetContacts @LastName varchar(20)
AS
SELECT FirstName, LastName
FROM Person.Contact
WHERE LastName = @LastName
Go
Tato C# aplikace vykonává uloženou proceduru a specifikuje možnost PRO XML AUTO při zadávání hodnoty CommandText. V aplikaci je vlastnost ClientSideXml objektu SqlXmlCommand nastavena na true. To vám umožní spustit již existující uložené procedury, které vracejí sadu řádků, a aplikovat na ni XML transformaci na klientovi.
Poznámka:
V kódu musíte v řetězci spojení uvést název instance Microsoft SQL Serveru.
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;
SqlXmlParameter p;
SqlXmlCommand cmd = new SqlXmlCommand(ConnString);
cmd.ClientSideXml = true;
cmd.CommandText = "EXEC GetContacts ? FOR XML NESTED";
p = cmd.CreateParameter();
p.Value = "Achong";
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;
}
}
Pro testování tohoto příkladu musíte mít na počítači nainstalovaný Microsoft .NET Framework.
Otestování aplikace
Vytvořte uloženou proceduru.
Uložite C# kód (DocSample.cs), který je uveden v tomto příkladu, do složky. Upravte kód tak, aby specifikoval vhodné přihlašovací a heslové údaje.
Zkompilujte kód. Pro kompilaci kódu v příkazovém řádku použijte:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.csTím vzniká spustitelný soubor (DocSample.exe).
V příkazovém řádku spusťte DocSample.exe.