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

Соответствующий префикс. Если нет сопоставленного префикса, данный метод возвращает 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.

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

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