Поделиться через


XmlNamespaceManager.LookupPrefix(String) Метод

Определение

Находит префикс, объявленный для заданного URI пространства имен.

public:
 virtual System::String ^ LookupPrefix(System::String ^ uri);
public virtual string LookupPrefix(string uri);
public virtual string? LookupPrefix(string uri);
abstract member LookupPrefix : string -> string
override this.LookupPrefix : string -> string
Public Overridable Function LookupPrefix (uri As String) As String

Параметры

uri
String

Пространство имен для разрешения префикса.

Возвращаемое значение

Соответствующий префикс. Если сопоставленный префикс отсутствует, метод возвращает String.Empty. Если задано значение NULL, null возвращается.

Реализации

Примеры

В следующем примере показано, как использовать LookupPrefix метод при написании атрибута. Он использует XmlWriter.WriteStartAttribute метод для запуска атрибута, ищет префикс для urn:samples URI пространства имен, а затем использует этот префикс при XmlWriter.WriteStartAttribute написании атрибута ISBN :

Dim prefix As String = nsMgr.LookupPrefix("urn:samples")
writer.WriteStartAttribute(prefix, "ISBN", "urn:samples")
XmlNameTable nt = new XmlNameTable();
XmlNamespaceManager nsMgr = new XmlNamespaceManager(nt);
nsMgr.AddNamespace("bk","urn:samples");string prefix = writer nsMgr.LookupPrefix("urn:samples");
writer.WriteStartAttribute(prefix, "ISBN", "urn:samples");

В следующем примере используется LookupPrefix поиск префикса, определенного для элемента.

writer.WriteStartElement("root", "book")
writer.WriteStartElement("x", "node", "author")
s = writer.LookupPrefix("author")
CError.Compare(s, "x", "Error in nested element")
writer.WriteEndElement()
s = writer.LookupPrefix("book")
CError.Compare(s, Nothing, "Error in root element")
writer.WriteEndElement()

Выходные данные

<root xmlns="book">
  <x:node xmlns:x="author" />
</root>

Комментарии

Этот метод находит сопоставленный префикс, проходя по стеку (то есть он выглядит глобально). Указанная строка должна быть атомизирована для успешного поиска. Другими словами, указанный строковый объект должен существовать в таблице имен диспетчера имен (NameTable).

Возвращаемая строка также атомизирована. Дополнительные сведения об атомизованных строках см. в XmlNameTable классе.

Применяется к

См. также раздел