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 使用して属性を開始し、名前空間 URI のプレフィックスを urn:samples 検索し、そのプレフィックスを属性の 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 クラスを参照してください。

適用対象

こちらもご覧ください