INFORMACE: Výkon transformace XSLT v rozhraní .NET Framework

Překlady článku Překlady článku
ID článku: 325689 - 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 obsahuje informace o příčinách a řešení nebo zástupná výkonu známé problémy, které může dojít při použití procesoru .NET Framework XSLT spouštět XSLT transformace.

Transformace XSLT s XmlDataDocument provést pomalu

Použití transformace XSLT reprezentace dat v ADO.NET DataSet XML je běžným požadavkem aplikace. Microsoft .NET Framework základní třídy v oborech názvů System.XML se používají ve spojení s ADO.NET DataSet k implementaci tohoto požadavku v aplikacích .NET.

System.Xml.Xsl.XslTransform je základní třída .NET Framework, která slouží k provedení XSLT transformace. System.Xml.XmlDataDocument, System.Xml.XmlDocument a System.Xml.XPath.XPathDocument jsou tři základní třídy .NET Framework, které lze použít k načtení a zadat XML reprezentace dat v ADO.NET DataSet jako zdroj XML při provedení transformace XSLT. Z těchto tří možností pomocí objektu XmlDataDocument vyžaduje nejméně kód protože jej lze synchronizovat s objekt DataSet při je instance. Pomalý výkon je však běžné potíže při použití objektu XmlDataDocument použít transformaci XSLT XML reprezentace ADO.NET DataSet. Toto chování je záměrné verzi RTM .NET Framework.

System.Xml.XPath.XPathDocument je většina optimalizovaná třídy zpracování XPath a XSLT. Načíst reprezentace dat v XPathDocument objektu DataSet XML a zadat objekt XPathDocument jako zdroj XML při provedení transformace XSLT získat maximální výkon. Další informace o tomto problému a ukázkový kód, který demonstruje implementaci popsáno řešení klepněte na článek číslo článku databáze Microsoft Knowledge Base:
318580PRB: Transformace XSL s XmlDataDocument může provést pomaleji než XPathDocument

Zpomalit výkon při převádění DataSet s Non vnořený objekt DataRelation objekty

Pomalý výkon je obvyklý problém při pokusu o transformace XML reprezentace DataSet, který má více související objekty DataTable a není byla vnořené jehož objekt DataRelation objekty tak, aby odpovídaly hierarchické struktuře zobrazují vztahy v serializovaném XML.

Zkuste transformaci dat XML, například do jiného formátu hierarchické (například HTML tabulce, že zobrazí data v hierarchii nadřazený podřízený), musíte použít XPath OS cestu umístění jako například sourozenců následující a předcházející sourozenců může zpomalit transformace zpracovat když máte středně velké svazky data.

V takových situacích společnost Microsoft doporučuje vnořit objekt DataRelation objektů DataSet (která je, nastavte na hodnotu TRUE vlastnost vnořenéobjekt DataRelation) a napsat kód stylů XSLT, který používá přirozeným shora dolů hierarchické výrazy XPath dotazu vyhledejte a transformaci dat.Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
325693PRB: Pomalý výkon při převádění ADO.NET DataSet s Non vnořený DataRelations

100 % Využití PROCESORU nebo přestat reagovat při při použití XmlDocument k provedení transformace XSLT, že použití předcházející sourozenců

Pomocí objektu XmlDocument zadat zdroj využití PROCESORU 100 procent způsobí XML transformaci XSLT, který používá předcházející sourozenců XPath umístění os, které způsobí, že počítač přestane reagovat (zablokuje se) a také způsobí steep přetažení v výkon systému.

Toto chování je patrné při transformaci středně velkých dokumentů XML nebo datové proudy. Toto je aktuálně známé potíže v verzi RTM .NET Framework. Microsoft funguje zabránit využití PROCESORU 100 procent v další hlavní vydání .NET Framework. Zvýšení XmlDocument odpovídají výkonu XPathDocument při spouštění dotazů XPath a transformace XSLT není cílem pro budoucí verze .NET Framework.

Třída XPathDocument je doporučená rozhraní .NET načíst XML při aplikace musí spustit transformace XSLT nebo XPath dotazy na XML data. Setkáte-li tento problém, upravte kód použití objektu XPathDocument k zadání zdroje XML k procesu transformace XSLT.

Pomalý výkon při při použití XSL: Key

Element XSL: Key XSLT se často používá k seskupení dat XML nebo identifikovat jedinečný výskytů Zadaný prvek nebo atribut hodnoty ve zdroji XML. Šablony stylů XSLT pomocí elementu XSL: Key vykazují pomalý výkon, pokud jsou používány k transformaci dat XML v aplikacích .NET. To je způsobeno známý problém v XSLT procesoru implementace elementu XSL: Key v verzi RTM .NET Framework.

Oprava pro vyřešení tohoto problému je aktuálně k dispozici. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
324478Pomalý výkon XSLT s spravovaných analyzátor

Spravované sestavení generovaný bloky Script vložené vydaná není správně

Vygenerování a načten implicitně spouštět kód obsažený v vložené <msxsl:script> spravované sestavení .NET Framework bloky. Známý problém v verzi RTM .NET Framework zabraňuje tyto sestavení z správně uvolňování po dokončení procesu transformace. Tento anomálií způsobit přírůstkové zvýšení využití paměti výsledkem přetažení výkonu systému, 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 získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
316775PRB: Nelze uvolnit sestavení, vytvoříte a načíst pomocí skriptu v XSLT
Chcete-li vyřešit tento anomálií ASP.NET aplikace zatížení ohrožený styl sheets pouze jednou během životnosti aplikace, mezipaměti stylů v mezipaměti ASP.NET a opakované použití mezipaměti verze novější transformace. V projektech aplikace konzoly a model Windows Forms použít globální instance objektů Výjimka ohrožený stylů při spuštění aplikace načíst a spustit novější transformace. Tyto metody řešení nejsou použitelné při transformaci XSLT musí být provedeny v nestavové prostředí (například střední vrstvy Enterprise Services součásti).

Společnost Microsoft doporučuje používat objekty rozšíření XSLT implementovat vlastní rozšíření funkce XPath a vyhnout se vedlejší účinky této anomálií.

Odkazy

Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
313997INFORMACE: Průvodce pro aplikace .NET Executing transformace XSLT

Vlastnosti

ID článku: 325689 - Poslední aktualizace: 23. ledna 2004 - Revize: 3.3
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft .NET Framework Class Libraries 1.0
  • Microsoft .NET Framework Class Libraries 1.1
Klíčová slova: 
kbmt kbinfo kbxml KB325689 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:325689
Právní omezení pro obsah znalostní báze týkající se produktů, jejichž podpora byla ukončena
Tento článek byl napsán o produktech, pro které společnost Microsoft již neposkytuje nadále podporu. Článek je tedy nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.

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