XslTransform.Load Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Загружает таблицу стилей XSLT, включая любые таблицы стилей, на которые имеются ссылки в элементах xsl:include
и xsl:import
.
Перегрузки
Load(XPathNavigator, XmlResolver, Evidence) |
Загружает таблицу стилей XSLT, содержащуюся в классе XPathNavigator. Этот метод позволяет ограничивать разрешения для таблиц стилей путем указания свидетельства. |
Load(IXPathNavigable, XmlResolver, Evidence) |
Загружает таблицу стилей XSLT, содержащуюся в классе IXPathNavigable. Этот метод позволяет ограничивать разрешения для таблиц стилей путем указания свидетельства. |
Load(XPathNavigator, XmlResolver) |
Является устаревшей.
Загружает таблицу стилей XSLT, содержащуюся в классе XPathNavigator. |
Load(IXPathNavigable, XmlResolver) |
Является устаревшей.
Загружает таблицу стилей XSLT, содержащуюся в классе IXPathNavigable. |
Load(XmlReader, XmlResolver) |
Является устаревшей.
Загружает таблицу стилей XSLT, содержащуюся в классе XmlReader. |
Load(XmlReader, XmlResolver, Evidence) |
Загружает таблицу стилей XSLT, содержащуюся в классе XmlReader. Этот метод позволяет ограничивать разрешения для таблиц стилей путем указания свидетельства. |
Load(XPathNavigator) |
Является устаревшей.
Загружает таблицу стилей XSLT, содержащуюся в классе XPathNavigator. |
Load(IXPathNavigable) |
Является устаревшей.
Загружает таблицу стилей XSLT, содержащуюся в классе IXPathNavigable. |
Load(XmlReader) |
Является устаревшей.
Загружает таблицу стилей XSLT, содержащуюся в классе XmlReader. |
Load(String) |
Загружает таблицу стилей XSLT с указанного URL. |
Load(String, XmlResolver) |
Загружает таблицу стилей XSLT с указанного URL. |
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
Load(XPathNavigator, XmlResolver, Evidence)
Загружает таблицу стилей XSLT, содержащуюся в классе XPathNavigator. Этот метод позволяет ограничивать разрешения для таблиц стилей путем указания свидетельства.
public:
void Load(System::Xml::XPath::XPathNavigator ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit
Public Sub Load (stylesheet As XPathNavigator, resolver As XmlResolver, evidence As Evidence)
Параметры
- stylesheet
- XPathNavigator
Объект XPathNavigator, содержащий загружаемую таблицу стилей.
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
. Если его значение равно null
, внешние ресурсы не определяются.
XmlResolver не кэшируется после завершения метода Load.
- evidence
- Evidence
Свидетельство Evidence, устанавливаемое для сборки, созданной для блока скриптов таблицы стилей XSLT.
Если значение этого параметра равно null
, то блоки скриптов не обрабатываются, XSLT-функция document()
не поддерживается и использование привилегированных объектов расширения запрещено.
Чтобы передать свидетельство сборке скриптов, вызывающий оператор должен иметь разрешение ControlEvidence
. Вызывающие объекты, не имеющие полного доверия, могут установить для этого параметра значение null
.
Исключения
Текущий узел не соответствует допустимой таблице стилей.
Указанной таблице стилей требуется произвести действия, не позволенные в рамках предоставленного свидетельства.
Вызывающий оператор пытается передать свидетельство, не имея разрешения ControlEvidence
.
Примеры
В следующем примере выполняется преобразование XSLT с помощью таблицы стилей из внешнего источника. Так как таблица стилей поступает из ненадежного источника, resolver
evidence
для параметров задано значение null
.
public static void TransformFile (XPathNavigator xsltNav) {
// Load the stylesheet.
XslTransform xslt = new XslTransform();
xslt.Load(xsltNav, null, null);
// Transform the file.
xslt.Transform("books.xml", "books.html", null);
}
public shared sub TransformFile (xsltNav as XPathNavigator)
' Load the stylesheet.
Dim xslt as XslTransform = new XslTransform()
xslt.Load(xsltNav, nothing, nothing)
' Transform the file.
xslt.Transform("books.xml", "books.html", nothing)
end sub
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Таблица стилей загружается из текущей позиции элемента XPathNavigator. Чтобы использовать часть загруженного документа в качестве таблицы стилей, перейдите к узлу, соответствующему началу таблицы стилей. Load После возврата XPathNavigator метода он размещается в начале таблицы стилей (на xsl:style sheet
узле).
Существуют различные способы предоставления доказательств. В следующей таблице описывается тип доказательств, предоставляемых для распространенных пользовательских сценариев.
Сценарий | Тип доказательств для предоставления |
---|---|
Таблица стилей XSLT является автономной или поступает из доверенной базы кода. | Используйте доказательства из сборки.
|
Таблица стилей XSLT поступает из внешнего источника. Источник известен и существует проверяемый URL-адрес. | Создайте свидетельство с помощью URL-адреса.
|
Таблица стилей XSLT поступает из внешнего источника. Происхождение источника неизвестно. | Присвойте свидетельству значение null . Блоки скриптов не обрабатываются, функция XSLT document() не поддерживается, привилегированные объекты расширения запрещены.Кроме того, можно также задать для параметра null значение resolver . Это гарантирует, что xsl:import и xsl:include элементы не обрабатываются. |
Таблица стилей XSLT поступает из внешнего источника. Происхождение источника неизвестно, но необходима поддержка скриптов. | Запросите свидетельство у вызывающего. API вызывающего объекта должен предоставить способ предоставления доказательств, как правило Evidence , класса. |
См. также раздел
- Credentials
- NetworkCredential
- CredentialCache
- SecurityZone
- XmlSecureResolver
- CreateEvidenceForUrl(String)
Применяется к
Load(IXPathNavigable, XmlResolver, Evidence)
Загружает таблицу стилей XSLT, содержащуюся в классе IXPathNavigable. Этот метод позволяет ограничивать разрешения для таблиц стилей путем указания свидетельства.
public:
void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit
Public Sub Load (stylesheet As IXPathNavigable, resolver As XmlResolver, evidence As Evidence)
Параметры
- stylesheet
- IXPathNavigable
Объект, реализующий интерфейс IXPathNavigable. В .NET Framework это может быть либо объект XmlNode (обычно XmlDocument), либо объект XPathDocument, содержащий таблицу стилей XSLT.
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
. Если его значение равно null
, внешние ресурсы не определяются.
XmlResolver не кэшируется после завершения метода Load.
- evidence
- Evidence
Свидетельство Evidence, устанавливаемое для сборки, созданной для блока скриптов таблицы стилей XSLT.
Если значение этого параметра равно null
, то блоки скриптов не обрабатываются, XSLT-функция document()
не поддерживается и использование привилегированных объектов расширения запрещено.
Чтобы передать свидетельство сборке скриптов, вызывающий оператор должен иметь разрешение ControlEvidence
. Вызывающие объекты, не имеющие полного доверия, могут установить для этого параметра значение null
.
Исключения
Загружаемый ресурс не является допустимой таблицей стилей.
Указанной таблице стилей требуется произвести действия, не позволенные в рамках предоставленного свидетельства.
Вызывающий оператор пытается передать свидетельство, не имея разрешения ControlEvidence
.
Комментарии
Примечание
Класс XslTransform в платформе .NET Framework версии 2.0 является устаревшим. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Существуют различные способы предоставления доказательств. В следующей таблице описывается тип доказательств, предоставляемых для распространенных пользовательских сценариев.
Сценарий | Тип доказательств для предоставления |
---|---|
Таблица стилей XSLT является автономной или поступает из доверенной базы кода. | Используйте доказательства из сборки.
|
Таблица стилей XSLT поступает из внешнего источника. Источник известен и существует проверяемый URL-адрес. | Создайте свидетельство с помощью URL-адреса.
|
Таблица стилей XSLT поступает из внешнего источника. Происхождение источника неизвестно. | Присвойте свидетельству значение null . Блоки скриптов не обрабатываются, функция XSLT document() не поддерживается, привилегированные объекты расширения запрещены.Кроме того, можно также задать для параметра null значение resolver . Это гарантирует, что xsl:import и xsl:include элементы не обрабатываются. |
Таблица стилей XSLT поступает из внешнего источника. Происхождение источника неизвестно, но необходима поддержка скриптов. | Запросите свидетельство у вызывающего. API вызывающего объекта должен предоставить способ предоставления доказательств, как правило Evidence , класса. |
См. также раздел
- Credentials
- NetworkCredential
- CredentialCache
- SecurityZone
- XmlSecureResolver
- CreateEvidenceForUrl(String)
Применяется к
Load(XPathNavigator, XmlResolver)
Внимание!
You should pass evidence to Load() method
Загружает таблицу стилей XSLT, содержащуюся в классе XPathNavigator.
public:
void Load(System::Xml::XPath::XPathNavigator ^ stylesheet, System::Xml::XmlResolver ^ resolver);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver? resolver);
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.XPathNavigator stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.XPathNavigator * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As XPathNavigator, resolver As XmlResolver)
Параметры
- stylesheet
- XPathNavigator
Объект XPathNavigator, содержащий таблицу стилей XSLT.
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
. Если его значение равно null
, внешние ресурсы не определяются.
XmlResolver не кэшируется после завершения метода Load.
- Атрибуты
Исключения
Текущий узел не соответствует допустимой таблице стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Таблица стилей загружается из текущей позиции .XPathNavigator Чтобы использовать часть загруженного документа в качестве таблицы стилей, перейдите к узлу, соответствующему началу таблицы стилей. Load После возврата XPathNavigator метода он размещается в начале таблицы стилей (на xsl:style sheet
узле).
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Сборка имеет полное доверие. Рекомендуется предоставить доказательства с помощью Load(XPathNavigator, XmlResolver, Evidence).
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
См. также раздел
Применяется к
Load(IXPathNavigable, XmlResolver)
Внимание!
You should pass evidence to Load() method
Загружает таблицу стилей XSLT, содержащуюся в классе IXPathNavigable.
public:
void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet, System::Xml::XmlResolver ^ resolver);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver? resolver);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.IXPathNavigable stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.IXPathNavigable * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As IXPathNavigable, resolver As XmlResolver)
Параметры
- stylesheet
- IXPathNavigable
Объект, реализующий интерфейс IXPathNavigable. В .NET Framework это может быть либо объект XmlNode (обычно XmlDocument), либо объект XPathDocument, содержащий таблицу стилей XSLT.
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
. Если его значение равно null
, внешние ресурсы не определяются.
XmlResolver не кэшируется после завершения метода Load.
- Атрибуты
Исключения
Загружаемый ресурс не является допустимой таблицей стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Сборка имеет полное доверие. Рекомендуется предоставить доказательства с помощью Load(IXPathNavigable, XmlResolver, Evidence) метода.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
См. также раздел
Применяется к
Load(XmlReader, XmlResolver)
Внимание!
You should pass evidence to Load() method
Загружает таблицу стилей XSLT, содержащуюся в классе XmlReader.
public:
void Load(System::Xml::XmlReader ^ stylesheet, System::Xml::XmlResolver ^ resolver);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver? resolver);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver);
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver -> unit
Public Sub Load (stylesheet As XmlReader, resolver As XmlResolver)
Параметры
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
. Если его значение равно null
, внешние ресурсы не определяются.
XmlResolver не кэшируется после завершения метода Load(XmlReader, XmlResolver).
- Атрибуты
Исключения
Текущий узел не соответствует допустимой таблице стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Этот метод загружает таблицу стилей XSLT, включая все таблицы стилей, на которые ссылается ссылка, xsl:include
и xsl:import
элементы. Таблица стилей загружается из текущего узла всех дочерних XmlReader элементов. Это позволяет использовать часть документа в качестве таблицы стилей.
Load После возврата XmlReader метода он размещается на следующем узле после конца таблицы стилей. По достижении конца документа объект XmlReader позиционируется в конец файла (EOF).
Если таблица стилей содержит сущности, следует указать XmlReader , что может разрешать сущности (XmlReader.CanResolveEntity возвращается true
). В этом случае можно использовать объект XmlValidatingReader .
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Сборка имеет полное доверие. Рекомендуется предоставить доказательства с помощью Load(XmlReader, XmlResolver, Evidence) метода.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
См. также раздел
Применяется к
Load(XmlReader, XmlResolver, Evidence)
Загружает таблицу стилей XSLT, содержащуюся в классе XmlReader. Этот метод позволяет ограничивать разрешения для таблиц стилей путем указания свидетельства.
public:
void Load(System::Xml::XmlReader ^ stylesheet, System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public void Load (System.Xml.XmlReader stylesheet, System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
member this.Load : System.Xml.XmlReader * System.Xml.XmlResolver * System.Security.Policy.Evidence -> unit
Public Sub Load (stylesheet As XmlReader, resolver As XmlResolver, evidence As Evidence)
Параметры
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
. Если его значение равно null
, внешние ресурсы не определяются.
XmlResolver не кэшируется после завершения метода Load.
- evidence
- Evidence
Свидетельство Evidence, устанавливаемое для сборки, созданной для блока скриптов таблицы стилей XSLT.
Если значение этого параметра равно null
, то блоки скриптов не обрабатываются, XSLT-функция document()
не поддерживается и использование привилегированных объектов расширения запрещено.
Чтобы передать свидетельство сборке скриптов, вызывающий оператор должен иметь разрешение ControlEvidence
. Вызывающие объекты, не имеющие полного доверия, могут установить для этого параметра значение null
.
Исключения
Текущий узел не соответствует допустимой таблице стилей.
Указанной таблице стилей требуется произвести действия, не позволенные в рамках предоставленного свидетельства.
Вызывающий оператор пытается передать свидетельство, не имея разрешения ControlEvidence
.
Примеры
В следующем примере выполняется преобразование XSLT, где xsltReader
содержится XmlReader таблица стилей и secureURL
является доверенным URL-адресом, который можно использовать для создания Evidence. Метод XmlSecureResolver.CreateEvidenceForUrl используется для создания Evidence , который применяется к таблице стилей.
void TransformFile( XmlReader^ xsltReader, String^ secureURL )
{
// Load the stylesheet using a default XmlUrlResolver and Evidence
// created using the trusted URL.
XslTransform^ xslt = gcnew XslTransform;
xslt->Load( xsltReader, gcnew XmlUrlResolver, XmlSecureResolver::CreateEvidenceForUrl( secureURL ) );
// Transform the file.
xslt->Transform("books.xml","books.html",gcnew XmlUrlResolver);
}
public static void TransformFile (XmlReader xsltReader, String secureURL) {
// Load the stylesheet using a default XmlUrlResolver and Evidence
// created using the trusted URL.
XslTransform xslt = new XslTransform();
xslt.Load(xsltReader, new XmlUrlResolver(), XmlSecureResolver.CreateEvidenceForUrl(secureURL));
// Transform the file.
xslt.Transform("books.xml", "books.html", new XmlUrlResolver());
}
public shared sub TransformFile (xsltReader as XmlReader, secureURL as String)
' Load the stylesheet using a default XmlUrlResolver and Evidence
' created using the trusted URL.
Dim xslt as XslTransform = new XslTransform()
xslt.Load(xsltReader, new XmlUrlResolver(), XmlSecureResolver.CreateEvidenceForUrl(secureURL))
' Transform the file.
xslt.Transform("books.xml", "books.html", new XmlUrlResolver())
end sub
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Этот метод загружает таблицу стилей XSLT, включая все таблицы стилей, на которые ссылается ссылка, xsl:include
и xsl:import
элементы. Таблица стилей загружается из текущего узла всех дочерних XmlReader элементов. Это позволяет использовать часть документа в качестве таблицы стилей.
Load После возврата XmlReader метода он размещается на следующем узле после конца таблицы стилей. По достижении конца документа объект XmlReader позиционируется в конец файла (EOF).
Если таблица стилей содержит сущности, следует указать XmlReader , что может разрешать сущности (XmlReader.CanResolveEntity возвращается true
). В этом случае можно использовать объект XmlValidatingReader .
Существуют различные способы предоставления доказательств. В следующей таблице описывается тип доказательств, предоставляемых для распространенных пользовательских сценариев.
Сценарий | Тип доказательства для предоставления |
---|---|
Таблица стилей XSLT является автономной или исходит из доверенной базы кода. | Используйте доказательства из сборки.
|
Таблица стилей XSLT поступает из внешнего источника. Источник источника известен и имеется проверяемый URL-адрес. | Создайте свидетельство с помощью URL-адреса.
|
Таблица стилей XSLT поступает из внешнего источника. Происхождение источника неизвестно. | Присвойте свидетельству значение null . Блоки скриптов не обрабатываются, функция XSLT document() не поддерживается, привилегированные объекты расширения запрещены.Кроме того, можно задать resolver для параметра значение null . Это гарантирует, что xsl:import и xsl:include элементы не обрабатываются. |
Таблица стилей XSLT поступает из внешнего источника. Происхождение источника неизвестно, но необходима поддержка скриптов. | Запросите свидетельство у вызывающего. API вызывающего объекта должен предоставить способ предоставления доказательств, как правило Evidence , класса. |
См. также раздел
- Credentials
- NetworkCredential
- CredentialCache
- SecurityZone
- XmlSecureResolver
- CreateEvidenceForUrl(String)
Применяется к
Load(XPathNavigator)
Внимание!
You should pass evidence to Load() method
Загружает таблицу стилей XSLT, содержащуюся в классе XPathNavigator.
public:
void Load(System::Xml::XPath::XPathNavigator ^ stylesheet);
public void Load (System.Xml.XPath.XPathNavigator stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.XPathNavigator stylesheet);
member this.Load : System.Xml.XPath.XPathNavigator -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.XPathNavigator -> unit
Public Sub Load (stylesheet As XPathNavigator)
Параметры
- stylesheet
- XPathNavigator
Объект XPathNavigator, содержащий таблицу стилей XSLT.
- Атрибуты
Исключения
Текущий узел не соответствует допустимой таблице стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Этот метод загружает таблицу стилей XSLT, включая все таблицы стилей, на которые ссылается ссылка, xsl:include
и xsl:import
элементы. Внешние ресурсы разрешаются с помощью XmlUrlResolver учетных данных пользователя без учетных данных. Если таблицы стилей находятся в сетевом ресурсе, для которого требуется проверка подлинности, используйте перегрузку, которая принимает XmlResolver один из его аргументов, и укажите XmlResolver необходимые учетные данные.
Таблица стилей загружается из текущей позиции элемента XPathNavigator. Чтобы использовать только часть загруженного документа в качестве таблицы стилей, перейдите к узлу, соответствующему началу таблицы стилей. Load После возврата XPathNavigator метода он размещается в начале таблицы стилей (на xsl:style sheet
узле).
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Сборка имеет полное доверие. Рекомендуется предоставить доказательства с помощью Load(XPathNavigator, XmlResolver, Evidence) метода.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
Применяется к
Load(IXPathNavigable)
Внимание!
You should pass evidence to Load() method
Загружает таблицу стилей XSLT, содержащуюся в классе IXPathNavigable.
public:
void Load(System::Xml::XPath::IXPathNavigable ^ stylesheet);
public void Load (System.Xml.XPath.IXPathNavigable stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XPath.IXPathNavigable stylesheet);
member this.Load : System.Xml.XPath.IXPathNavigable -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XPath.IXPathNavigable -> unit
Public Sub Load (stylesheet As IXPathNavigable)
Параметры
- stylesheet
- IXPathNavigable
Объект, реализующий интерфейс IXPathNavigable. В .NET Framework это может быть либо объект XmlNode (обычно XmlDocument), либо объект XPathDocument, содержащий таблицу стилей XSLT.
- Атрибуты
Исключения
Загружаемый ресурс не является допустимой таблицей стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Этот метод загружает таблицу стилей XSLT, включая все таблицы стилей, на которые ссылается ссылка, xsl:include
и xsl:import
элементы. Внешние ресурсы разрешаются с помощью XmlUrlResolver учетных данных пользователя без учетных данных. Если таблицы стилей находятся в сетевом ресурсе, для которого требуется проверка подлинности, используйте перегрузку, которая принимает XmlResolver один из его аргументов, и укажите XmlResolver необходимые учетные данные.
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Сборка имеет полное доверие. Рекомендуется предоставить доказательства с помощью Load(IXPathNavigable, XmlResolver, Evidence) метода.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
Применяется к
Load(XmlReader)
Внимание!
You should pass evidence to Load() method
Загружает таблицу стилей XSLT, содержащуюся в классе XmlReader.
public:
void Load(System::Xml::XmlReader ^ stylesheet);
public void Load (System.Xml.XmlReader stylesheet);
[System.Obsolete("You should pass evidence to Load() method")]
public void Load (System.Xml.XmlReader stylesheet);
member this.Load : System.Xml.XmlReader -> unit
[<System.Obsolete("You should pass evidence to Load() method")>]
member this.Load : System.Xml.XmlReader -> unit
Public Sub Load (stylesheet As XmlReader)
Параметры
- Атрибуты
Исключения
Текущий узел не соответствует допустимой таблице стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Примеры
В следующем примере xml-файл, отсортированный по названию, преобразует все книги по названию.
#using <System.Xml.dll>
#using <System.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Xsl;
using namespace System::Xml::XPath;
int main()
{
String^ filename = "books.xml";
String^ stylesheet = "titles.xsl";
// Create the reader to load the stylesheet.
// Move the reader to the xsl:stylesheet node.
XmlTextReader^ reader = gcnew XmlTextReader( stylesheet );
reader->Read();
reader->Read();
// Create the XslTransform object and load the stylesheet.
XslTransform^ xslt = gcnew XslTransform;
xslt->Load( reader );
// Load the file to transform.
XPathDocument^ doc = gcnew XPathDocument( filename );
// Create an XmlTextWriter which outputs to the console.
XmlTextWriter^ writer = gcnew XmlTextWriter( Console::Out );
// Transform the file and send the output to the console.
xslt->Transform(doc,nullptr,writer);
writer->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;
public class Sample
{
private const String filename = "books.xml";
private const String stylesheet = "titles.xsl";
public static void Main()
{
//Create the reader to load the stylesheet.
//Move the reader to the xsl:stylesheet node.
XmlTextReader reader = new XmlTextReader(stylesheet);
reader.Read();
reader.Read();
//Create the XslTransform object and load the stylesheet.
XslTransform xslt = new XslTransform();
xslt.Load(reader);
//Load the file to transform.
XPathDocument doc = new XPathDocument(filename);
//Create an XmlTextWriter which outputs to the console.
XmlTextWriter writer = new XmlTextWriter(Console.Out);
//Transform the file and send the output to the console.
xslt.Transform(doc, null, writer);
writer.Close();
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath
public class Sample
private const filename as String = "books.xml"
private const stylesheet as String = "titles.xsl"
public shared sub Main()
'Create the reader to load the stylesheet.
'Move the reader to the xsl:stylesheet node.
Dim reader as XmlTextReader = new XmlTextReader(stylesheet)
reader.Read()
reader.Read()
'Create the XslTransform object and load the stylesheet.
Dim xslt as XslTransform = new XslTransform()
xslt.Load(reader)
'Load the file to transform.
Dim doc as XPathDocument = new XPathDocument(filename)
'Create an XmlTextWriter which outputs to the console.
Dim writer as XmlTextWriter = new XmlTextWriter(Console.Out)
'Transform the file and send the output to the console.
xslt.Transform(doc, nothing, writer)
writer.Close()
end sub
end class
В этом примере в качестве входных данных используются следующие файлы данных.
books.xml
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
titles.xsl
<!--Stylesheet to sort all books by title-->
<!--Created 2/13/2001-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
<books>
<xsl:apply-templates select="book">
<xsl:sort select="title"/>
</xsl:apply-templates>
</books>
</xsl:template>
<xsl:template match="book">
<book><xsl:copy-of select="node()"/></book>
</xsl:template>
</xsl:stylesheet>
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Этот метод загружает таблицу стилей XSLT, включая все таблицы стилей, на которые ссылается ссылка, xsl:include
и xsl:import
элементы. Внешние ресурсы разрешаются с помощью XmlUrlResolver учетных данных пользователя без учетных данных. Если таблицы стилей находятся в сетевом ресурсе, для которого требуется проверка подлинности, используйте перегрузку, которая принимает XmlResolver один из его аргументов, и укажите XmlResolver необходимые учетные данные.
Таблица стилей загружается из текущего узла всех дочерних XmlReader элементов. Это позволяет использовать часть документа в качестве таблицы стилей. Load После возврата XmlReader метода он размещается на следующем узле после конца таблицы стилей. По достижении конца документа объект XmlReader позиционируется в конец файла (EOF).
Если таблица стилей содержит сущности, следует указатьXmlReader, что можно разрешить сущности (XmlReader.CanResolveEntityвозвращает).true
В этом случае можно использовать объект XmlValidatingReader .
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Сборка имеет полное доверие. Рекомендуется предоставить доказательства с помощью Load(XmlReader, XmlResolver, Evidence) метода.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
Применяется к
Load(String)
Загружает таблицу стилей XSLT с указанного URL.
public:
void Load(System::String ^ url);
public void Load (string url);
member this.Load : string -> unit
Public Sub Load (url As String)
Параметры
- url
- String
Адрес URL, задающий таблицу стилей XSLT для загрузки.
Исключения
Загружаемый ресурс не является допустимой таблицей стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Примеры
В следующем примере XML-документ преобразуется в HTML-документ. В нем отображаются ISBN, название и цена для каждой книги в таблице.
#using <System.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Xml::Xsl;
using namespace System::Xml::XPath;
int main()
{
String^ filename = "books.xml";
String^ stylesheet = "output.xsl";
//Load the stylesheet.
XslTransform^ xslt = gcnew XslTransform;
xslt->Load( stylesheet );
//Load the file to transform.
XPathDocument^ doc = gcnew XPathDocument( filename );
//Create an XmlTextWriter which outputs to the console.
XmlTextWriter^ writer = gcnew XmlTextWriter( Console::Out );
//Transform the file and send the output to the console.
xslt->Transform(doc,nullptr,writer,nullptr);
writer->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.XPath;
public class Sample
{
private const String filename = "books.xml";
private const String stylesheet = "output.xsl";
public static void Main()
{
//Load the stylesheet.
XslTransform xslt = new XslTransform();
xslt.Load(stylesheet);
//Load the file to transform.
XPathDocument doc = new XPathDocument(filename);
//Create an XmlTextWriter which outputs to the console.
XmlTextWriter writer = new XmlTextWriter(Console.Out);
//Transform the file and send the output to the console.
xslt.Transform(doc, null, writer, null);
writer.Close();
}
}
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.XPath
Public Class Sample
Private Shared filename1 As String = "books.xml"
Private Shared stylesheet1 As String = "output.xsl"
Public Shared Sub Main()
'Load the stylesheet.
Dim xslt As New XslTransform()
xslt.Load(stylesheet1)
'Load the file to transform.
Dim doc As New XPathDocument(filename1)
'Create an XmlTextWriter which outputs to the console.
Dim writer As New XmlTextWriter(Console.Out)
'Transform the file and send the output to the console.
xslt.Transform(doc, Nothing, writer, Nothing)
writer.Close()
End Sub
End Class
Образец использует следующие два входных файла.
books.xml
<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
output.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
<HTML>
<BODY>
<TABLE BORDER="2">
<TR>
<TD>ISBN</TD>
<TD>Title</TD>
<TD>Price</TD>
</TR>
<xsl:apply-templates select="book"/>
</TABLE>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="book">
<TR>
<TD><xsl:value-of select="@ISBN"/></TD>
<TD><xsl:value-of select="title"/></TD>
<TD><xsl:value-of select="price"/></TD>
</TR>
</xsl:template>
</xsl:stylesheet>
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
пространства имен.
Этот метод загружает таблицу стилей XSLT, включая все таблицы стилей, на которые ссылается ссылка, xsl:include
и xsl:import
элементы. Внешние ресурсы разрешаются с помощью XmlUrlResolver учетных данных пользователя без учетных данных. Если таблицы стилей находятся в сетевом ресурсе, для которого требуется проверка подлинности, используйте перегрузку, которая принимает XmlResolver один из его аргументов, и укажите XmlResolver необходимые учетные данные.
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Универсальный код ресурса (URI) таблицы стилей используется для создания свидетельства, применяемого к сборке.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.
Применяется к
Load(String, XmlResolver)
Загружает таблицу стилей XSLT с указанного URL.
public:
void Load(System::String ^ url, System::Xml::XmlResolver ^ resolver);
public void Load (string url, System.Xml.XmlResolver? resolver);
public void Load (string url, System.Xml.XmlResolver resolver);
member this.Load : string * System.Xml.XmlResolver -> unit
Public Sub Load (url As String, resolver As XmlResolver)
Параметры
- url
- String
Адрес URL, задающий таблицу стилей XSLT для загрузки.
- resolver
- XmlResolver
Объект XmlResolver используется для загрузки таблицы стилей и всех таблиц стилей, на которые имеются ссылки в элементах xsl:import
и xsl:include
.
Если он равен null
, то для открытия таблицы стилей используется объект XmlUrlResolver по умолчанию без указания учетных данных пользователя. Объект XmlUrlResolver по умолчанию не используется для разрешения внешних ресурсов в таблице стилей, поэтому элементы xsl:import
и xsl:include
не разрешаются.
XmlResolver не кэшируется после завершения метода Load(String, XmlResolver).
Исключения
Загружаемый ресурс не является допустимой таблицей стилей.
Таблица стилей содержит внедренные скрипты, а вызывающий оператор не имеет разрешения UnmanagedCode
.
Примеры
В следующем примере XML-документ преобразуется в HTML-документ. В этом примере загружается таблица стилей XSLT, содержащая xsl:include
элемент, ссылающийся на другую таблицу стилей. Передается XmlUrlResolver методу Load , который задает учетные данные, необходимые для доступа к сетевому ресурсу для включенной таблицы стилей.
using System;
using System.IO;
using System.Xml;
using System.Xml.XPath;
using System.Xml.Xsl;
using System.Net;
public class Sample
{
private const String filename = "books.xml";
private const String stylesheet = "sort.xsl";
public static void Main()
{
//Create the XslTransform.
XslTransform xslt = new XslTransform();
//Create a resolver and set the credentials to use.
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = CredentialCache.DefaultCredentials;
//Load the stylesheet.
xslt.Load(stylesheet, resolver);
//Load the XML data file.
XPathDocument doc = new XPathDocument(filename);
//Create the XmlTextWriter to output to the console.
XmlTextWriter writer = new XmlTextWriter(Console.Out);
//Transform the file.
xslt.Transform(doc, null, writer, null);
writer.Close();
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.XPath
Imports System.Xml.Xsl
Imports System.Net
public class Sample
private shared filename as String = "books.xml"
private shared stylesheet as String = "sort.xsl"
public shared sub Main()
'Create the XslTransform.
Dim xslt as XslTransform = new XslTransform()
'Create a resolver and set the credentials to use.
Dim resolver as XmlUrlResolver = new XmlUrlResolver()
resolver.Credentials = CredentialCache.DefaultCredentials
'Load the stylesheet.
xslt.Load(stylesheet, resolver)
'Load the XML data file.
Dim doc as XPathDocument = new XPathDocument(filename)
'Create the XmlTextWriter to output to the console.
Dim writer as XmlTextWriter = new XmlTextWriter(Console.Out)
'Transform the file.
xslt.Transform(doc, nothing, writer, nothing)
writer.Close()
end sub
end class
В этом примере в качестве входных данных используются следующие файлы данных.
books.xml
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
<book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
sort.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore"/>
<xsl:include href="http://serverA/includefile.xsl"/>
<xsl:template match="book">
<TR>
<TD><xsl:value-of select="@ISBN"/></TD>
<TD><xsl:value-of select="title"/></TD>
<TD><xsl:value-of select="price"/></TD>
</TR>
</xsl:template>
</xsl:stylesheet>
includefile.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="bookstore">
<HTML>
<BODY>
<TABLE BORDER="2">
<TR>
<TD>ISBN</TD>
<TD>Title</TD>
<TD>Price</TD>
</TR>
<xsl:apply-templates select="book">
<xsl:sort select="@ISBN"/>
</xsl:apply-templates>
</TABLE>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
Комментарии
Примечание
Класс XslTransform устарел в платформа .NET Framework версии 2.0. Класс XslCompiledTransform является новым процессором XSLT. Дополнительные сведения см. в разделе "Использование класса XslCompiledTransform " и миграция из класса XslTransform.
XslTransform поддерживает синтаксис XSLT 1.0. Таблица стилей XSLT должна содержать объявление xmlns:xsl= http://www.w3.org/1999/XSL/Transform
пространства имен.
Если таблица стилей содержит внедренные скрипты, скрипт компилируется в сборку. Универсальный код ресурса (URI) таблицы стилей используется для создания свидетельства, применяемого к сборке.
Примечание
Если вызывающий объект не имеет UnmanagedCode
разрешения, внедренный скрипт не компилируется и SecurityException создается исключение. Дополнительные сведения см. в разделах SecurityPermission и SecurityPermissionFlag.UnmanagedCode.