INFORMACE: Průvodce pro aplikace .NET Executing transformace XSLT

Překlady článku Překlady článku
ID článku: 313997 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek poskytuje návod k zavádění .NET Framework obory názvů a třídy, které můžete použít v aplikacích .NET programově provést transformace Extensible předlohy se styly Language Transformation (XSLT). Přehled článků obsahují odkazy na užitečné informace, včetně dokumentace online, články znalostní báze Knowledge Base a dokumenty Microsoft white paper, vám informace o produktu společnosti Microsoft nebo technologie.

Tento článek je kurz XSLT. Tento článek předpokládá jste obeznámeni s World Wide Web Consortium (W3C) XSLT standard a máte zkušenosti s vytvářením šablon stylů XSLT k transformaci dat XML.

Přehled

XSLT je Consortium webu (W3C) standardní transformace dat XML. XSLT se obvykle používá k zápisu stylů transformaci dat XML do jiných formátů, jako například HTML, pevné délky text, text oddělený čárkami nebo jiný formát XML.

Z pohledu vývojáře je programovací jazyk s syntaxe ve formátu RTF, XML, který implementuje prvky, které odpovídají programování konstrukce a prvky adresy běžné požadavky transformace XSLT.

ŠABLONY stylů XSLT často používat dotazy jazyk XML Path (XPath) vyhledejte uzly zdrojového dokumentu XML a použít šablony XSLT pro transformaci tyto uzly. Účinnost XPath dotazy v šablony stylů XSLT často ovlivnit a ovlivnit výkon transformace jej použít.

Z úsporného režimu vysoké úrovně bodu je softwarová součást, která se vztahuje k dokumentu XML zadaný zdroj provedení transformace XSLT a generovat požadované výstupní zadaný stylů procesoru XSLT.

Konečný výstup generovat transformace XSLT jsou obvykle dokumenty výsledek prezentovat data XML původní formát zadaný cíl.

Psaní kódu v aplikaci .NET k provedení transformace XSLT

Články znalostní báze Knowledge Base a následující kurz QuickStart ukazují, jak psát kód aplikace .NET použít šablony stylů XSLT provést základní transformaci dokumentu XML:
Jak I... použít transformaci XSL XML?
http://samples.gotdotnet.com/quickstart/howto/doc/Xml/TransformXml.aspx
307322Postupy: Použít transformaci XSL dokument XML pomocí Visual C# .NET
300929Postupy: Použít transformaci XSL, z dokumentu XML dokument XML pomocí jazyka .NET

System.Xml.Xsl Namespace

Třída Výjimka v oboru názvů System.Xml.Xsl implementuje procesoru .NET Framework XSLT. Objekt instance této třídy jsou vytvořeny a sloužící k provádění transformace XSLT aplikací .NET. Implementace procesoru XSLT v rozhraní .NET Framework je kompatibilní s verzí 1.0 W3C XSLT Recommendation.

Obor názvů System.Xml.Xsl také implementuje následující třídy podporují zpracování výjimek XSLT a rozšířené možnosti, které souvisejí s provádění transformace XSLT a dotazy XPath:
  • Třída XsltArgumentList. Pomocí objektu instance této třídy můžete zadat příponu instance objektu a hodnoty pro parametry XSLT definování ŠABLON stylů XSLT a odkaz.
  • XsltCompileException. Tato třída generuje výjimce .NET Framework při kompilaci šablony stylů XSLT dojde k chybě. ŠABLONY stylů XSLT je kompilován při provedení metody zatížení objekt Výjimka.
  • XsltException. Tato třída generuje výjimce .NET Framework při chybě běhu dojde během provádění transformace XSLT.
  • XsltContextIXsltContextFunction a IXsltContextVariable. Tyto rozšířené součásti jsou používány implementovat vlastní kontextu provádění dotazu XPath po požadavku implementovat a referenční uživatelem definovaných funkcí a proměnných XPath dotazy, které jsou provedeny v aplikacích .NET pomocí třída XPathNavigator a tříd modelu DOM (Document Object Model).

    Ve výrazech XPath dotazu, které jsou součástí šablony stylů XSLT snadněji implementovat uživatelem definovaných funkcí a proměnných, můžete použít vložené bloky skriptu, rozšíření objekty a XSLT proměnných nebo parametrů.

Rozšířené funkce XSLT

Tato část popisuje několik pokročilých funkcí XSLT.

Použití kanálů transformace XSLT

Použití kanálů odkazuje proces transformace zdrojového dokumentu XML přírůstkově použitím dvou nebo více ŠABLON stylů XSLT. Každou fázi zprostředkující generuje výstup je dodána jako vstup do další fáze úplně prostřednictvím do konečné fáze, které potom generuje příslušné výstup.

Tato metoda je užitečná při musí přetrvávat výstup zprostředkující fází generovat pro další zpracování není přímo vázáno do procesu transformace. Další informace o tomto tématu a ukázkový kód, který ukazuje využití klepněte článku číslo článku databáze Microsoft Knowledge Base:
320847Postupy: Příležitostí transformace XSLT aplikace .NET

Parametrizované transformace XSLT

Je běžné praxi XSLT definovat a používat parametry stylů. Parametrizované ŠABLON stylů XSLT definovat parametry, na které odkazuje ve výrazech XPath dotazu selektivně vyhledejte a transformace uzly ve zdroji dat XML pomocí prvku <xsl:param>. Hodnoty parametrů definované lze pevně v šabloně stylů nebo dodávaný v době spuštění. Druhém praxe dynamicky poskytovat hodnoty vstupní parametr řízení procesu transformace je nejběžnější použití této funkce.

V aplikacích .NET třída XsltArgumentList objekt používá zadávejte hodnoty parametrů XSLT v době provádění. Metoda AddParam slouží k přidání dvojice název hodnota, která představuje parametr je definován v šablony stylů a jeho hodnota třída XsltArgumentList objektu. Třída XsltArgumentList objekt potom zadané jako parametr, při provádění metody TransformVýjimka objektu, který slouží k provedení transformace.

Přístup a odebrat jednotlivé parametry jsou přidány do objektu třída XsltArgumentList se používají GetParam a metody RemoveParam. Další informace o provedení transformace XSLT parametrizované aplikací .NET klepněte na článek číslo článku databáze Microsoft Knowledge Base:
321704Postupy: Spouštět aplikace .NET parametrizované transformace XSL

Bloky inline Script

Vložený skript funkce jsou jednu z možností můžete implementovat uživatelem definované funkce a procedury, které odkazuje ve výrazech XPath dotazu používané šablony stylů XSLT sub. Možnost zahrnout bloky skriptu vložené šablony stylů XSLT je rozšíření W3C.

V rozhraní .NET Framework vlastní vložené funkce a podrutiny kódována v <msxsl:script> bloků v stylů XSLT. Programovací jazyk Microsoft Visual Studio .NET, jako například Microsoft Visual Basic .NET nebo Microsoft Visual C# .NET můžete použít tyto rutiny implementovat.

Je jeden nedostatky je přidružen k použití vloženého skriptu bloky, které provedou ŠABLON stylů XSLT-přenosné. Technologie, značky a sémantiku používaných k implementaci vložené bloky skriptu jsou rozšíření specifických pro dodavatele W3C XSLT specifikace není standardizovat.

Lze použít pouze šablony stylů XSLT, který definuje a používá vložené bloky skriptu úspěšně v transformace, které jsou provedeny pomocí procesoru XSLT, který lze interpretovat související sémantiku a integrovat s technologií, která má spustit kód.

Vygenerování a načten implicitně spouštět kód obsažený v vložené <msxsl:script> spravované sestavení .NET Framework bloky skriptu. V rozhraní .NET Framework, která zabraňuje tyto sestavení z správně uvolňování při dokončení procesu transformace právě známý problém. Tento anomálií může vést ke zvýšení využití paměti, pokud ohrožený stylů opakovaně načten provedení transformace XSLT. Unreleased paměti je vydáván pouze v případě, že hostitelský proces je recyklován. Další informace o tomto problému .NET Framework klepněte na článek číslo článku databáze Microsoft Knowledge Base:
316775PRB: Nelze uvolnit sestavení, vytvoříte a načíst pomocí skriptu v XSLT
Chcete-li vyřešit tento problém aplikací Microsoft ASP.NET, můžete načíst pouze jednou během životnosti aplikace ohrožené stylů, mezipaměť ohroženého stylů (v mezipaměti ASP.NET) a znovu mezipaměti verze transformace po.

V model Windows Forms a konzola aplikací můžete použít globální instance objektů Výjimka ohrožený stylů načíst při spuštění aplikace a execute novější transformace. Tato zástupná řešení nelze použít při transformace XSLT mají být provedeny v nestavové prostředích (například s součásti služby Enterprise střední vrstvy).

Společnost Microsoft doporučuje používat objekty rozšíření XSLT implementovat vlastní funkce rozšíření XPath obejít tento problém.

Objekty rozšíření XSLT

Společnost Microsoft doporučuje používat rozšíření objekty implementovat vlastní podrutiny a funkce, na které odkazuje ve výrazech XPath dotazu používané šablony stylů XSLT.

Můžete vytvořit .NET Framework dll implementovat a použití rozšíření objektů při provádění transformace v aplikacích .NET. Funkce a podrutiny vlastní jsou implementovány DLL a instance objektu komponenty DLL je poskytován jako parametr spuštění pomocí objektu třída XsltArgumentList při spuštění metody TransformVýjimka objektu.

Metoda AddExtensionObjecttřída XsltArgumentList třídy slouží k přidání instance objektu rozšíření třída XsltArgumentList objektu. Můžete použít metody Odebrat objekt rozšíření a získat přístup a odebrat je přidán k objektu třída XsltArgumentList instanci objektu rozšíření.

Specifikace W3C XSLT adres koncept a použití rozšíření prvky a funkce bez jakýchkoli věnujte pozornost nebo odkazovat základní technologii, která je nutné použít jejich implementaci. Musíte definovat a používají standardy předpony oboru názvů XML v stylů odkaz funkce a podrutiny jsou implementovány v rozšíření objekty. Dodavatele můžete vybrat technologii, která je nejvhodnější jejich platformu adresa aspekty implementace rozšíření objekty. Další informace o koncepci a použití rozšíření XSLT objekty v rozhraní .NET Framework a kroků vytvořit-end aplikaci, která demonstruje použití rozšíření objekty při provedení transformace XSLT v aplikacích .NET klepněte článku číslo článku databáze Microsoft Knowledge Base:
321702Postupy: Použití rozšíření objekty při spouštění transformace XSL aplikace Visual Basic .NET

Obecné pokyny pro provedení transformace XSLT pomocí třídy .NET Framework

  • Třída XPathDocument vysoce optimalizována pro zpracování XSLT a XPath. Pro optimální výkon vždy pomocí objektu XPathDocument zdroj XML během provádění transformace XSLT.
  • Mezipaměti a znovu použít Výjimka objekty, které slouží k načtení ŠABLON stylů, které se často používají spouštět novější transformace XSLT.
  • Procesoru XSLT neukládá automaticky mezipaměti instance objektu rozšíření, které jsou použity transformace XSLT. Mezipaměti a znovu použít třída XsltArgumentList objekty, které jsou použity při spouštění novější transformace poskytnout instance objektu rozšíření pro často používané šablony stylů XSLT. Toto je metoda mezipaměti objektů rozšíření, které jsou použity transformace XSLT v rozhraní .NET Framework.
  • Šablony stylů XSLT, který implementuje bloky skriptu vložené měli pouze načten jednou a v mezipaměti. Objekt v mezipaměti Výjimka pro pozdější transformace měli znovu použít. Pomocí tohoto cvičení můžete překonat problém správy paměti, která je popsána v článku znalostní báze Microsoft Knowledge Base Q316775 na vložené funkce skriptu nutné použít v šabloně stylů.
  • Společnost Microsoft doporučuje používat rozšíření objekty implementovat vlastní funkce, na které odkazuje ve výrazech XPath dotazu používané šablony stylů XSLT. Vlastní třídy XsltContext, IXsltContextFunction a IXsltContextVariable implementovat pouze v případě, že máte implementovat a vlastní rozšíření funkcí ve výrazech XPath dotazu, které jsou provedeny v aplikacích .NET pomocí XPathNavigator a třídy DOM odkazovat.
  • Implementovat kód pro zpracování XsltCompileException, XsltException a tříd .NET Framework XmlException výjimce při zápisu kódu provedení transformace XSLT zpracování výjimek. Tyto výjimky třídy poskytují informace o libovolné specifické XML nebo XSLT specifické potíže nastat při pokusu o provedení transformace XSLT. Společnost Microsoft doporučuje navíc implementovat kód pro zpracování jiných specifické výjimky .NET Framework a implementovat obecný třídy System.Exception založené na jiných, nesouvisející XSLT funkce je implementována v bloku kódu, který provádí transformace XSLT.

Výkon transformace XSLT v rozhraní .NET Framework

Další informace o příčiny a řešení výkonu známé problémy při spouštění transformace XSLT v aplikacích .NET klepněte článku číslo článku databáze Microsoft Knowledge Base:
325689INFORMACE: Výkon transformace XSLT v rozhraní .NET Framework

Odstraňování potíží

Pokud potíže nebo pokud máte dotazy mohou odkazovat na diskusní skupiny MSDN můžete sdílet své zkušenosti s Kolegové. Můžete také použít Microsoft Knowledge Base můžete vyhledat články o specifických problémech nebo kontaktovat odbornou.
Diskusní skupiny MSDN
http://msdn.microsoft.com/newsgroups/

Prohledávání znalostní báze
http://support.microsoft.com/search

Microsoft odborné
http://support.microsoft.com

Odkazy

Další informace % 1 klepněte na číslo článku níže % 2 % 2 článku databáze Microsoft Knowledge Base:
313651INFORMACE: Přehled XML .NET Framework

Vlastnosti

ID článku: 313997 - Poslední aktualizace: 12. srpna 2005 - Revize: 4.4
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.0
Klíčová slova: 
kbmt kbarttyperoadmap kbinfo KB313997 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:313997

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com