Sdílet prostřednictvím


XmlNamespaceManager.LookupPrefix(String) Metoda

Definice

Vyhledá předponu deklarovanou pro daný identifikátor URI oboru názvů.

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

Parametry

uri
String

Obor názvů, který se má pro předponu přeložit.

Návraty

Odpovídající předpona. Pokud neexistuje žádná mapovaná předpona, metoda vrátí String.Empty. Pokud je zadána hodnota null, je null vrácena.

Implementuje

Příklady

Následující příklad ukazuje, jak použít metodu LookupPrefix při zápisu atributu. Používá metodu XmlWriter.WriteStartAttribute ke spuštění atributu, vyhledá předponu identifikátoru urn:samples URI oboru názvů a pak použije danou předponu XmlWriter.WriteStartAttribute při zápisu atributu 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");

Následující příklad používá LookupPrefix k vyhledání předpony definované v elementu.

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()

Výstup

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

Poznámky

Tato metoda najde mapovanou předponu tím, že prochází zásobník (to znamená, že vypadá globálně). Zadaný řetězec musí být atomizován, aby vyhledávání bylo úspěšné. Jinými slovy, zadaný objekt řetězce musí existovat v tabulce názvů správce oboru názvů (NameTable).

Vrácený řetězec je také atomizován. Další informace o atomizovaných řetězcích naleznete ve XmlNameTable třídě.

Platí pro

Viz také