다음을 통해 공유


XmlNamespaceManager(XmlNameTable) 생성자

정의

지정된 XmlNamespaceManager를 사용하여 XmlNameTable 클래스의 새 인스턴스를 초기화합니다.

public:
 XmlNamespaceManager(System::Xml::XmlNameTable ^ nameTable);
public XmlNamespaceManager (System.Xml.XmlNameTable nameTable);
new System.Xml.XmlNamespaceManager : System.Xml.XmlNameTable -> System.Xml.XmlNamespaceManager
Public Sub New (nameTable As XmlNameTable)

매개 변수

nameTable
XmlNameTable

사용할 XmlNameTable입니다.

예외

null 가 생성자에 전달됩니다.

예제

다음 예제에서는 판독기의 이름 테이블을 사용하여 를 만듭니다 XmlNamespaceManager .

      XmlTextReader^ reader = gcnew XmlTextReader( "myfile.xml" );
      XmlNamespaceManager^ nsmanager = gcnew XmlNamespaceManager( reader->NameTable );
      nsmanager->AddNamespace( "msbooks", "www.microsoft.com/books" );
      nsmanager->PushScope();
      nsmanager->AddNamespace( "msstore", "www.microsoft.com/store" );
      while ( reader->Read() )
      {
         Console::WriteLine( "Reader Prefix:{0}", reader->Prefix );
         Console::WriteLine( "XmlNamespaceManager Prefix:{0}", nsmanager->LookupPrefix( nsmanager->NameTable->Get( reader->NamespaceURI ) ) );
      }
   }

};
XmlTextReader reader = new XmlTextReader("myfile.xml");
XmlNamespaceManager nsmanager = new XmlNamespaceManager(reader.NameTable);
nsmanager.AddNamespace("msbooks", "www.microsoft.com/books");
nsmanager.PushScope();
nsmanager.AddNamespace("msstore", "www.microsoft.com/store");
while (reader.Read())
{
    Console.WriteLine("Reader Prefix:{0}", reader.Prefix);
    Console.WriteLine("XmlNamespaceManager Prefix:{0}",
    nsmanager.LookupPrefix(nsmanager.NameTable.Get(reader.NamespaceURI)));
}
Dim reader As New XmlTextReader("myfile.xml")
Dim nsmanager As New XmlNamespaceManager(reader.NameTable)
nsmanager.AddNamespace("msbooks", "www.microsoft.com/books")
nsmanager.PushScope()
nsmanager.AddNamespace("msstore", "www.microsoft.com/store")
While reader.Read()
    Console.WriteLine("Reader Prefix:{0}", reader.Prefix)
    Console.WriteLine("XmlNamespaceManager Prefix:{0}",             nsmanager.LookupPrefix(nsmanager.NameTable.Get(reader.NamespaceURI)))
End While

설명

이름 테이블은 접두사 및 네임스페이스를 조회하는 데 사용됩니다. 미리 원자화된 문자열이 있는 기존 이름 테이블을 생성자에 지정할 수 있습니다. 이렇게 하면 몇 가지 이점이 있습니다. 예를 들어 개체의 XmlReader 이름 테이블을 사용하는 경우 각 읽기 후에 이름 테이블에 푸시된 모든 네임스페이스 및 접두사 문자열을 에서 XmlNamespaceManager다시 사용할 수 있습니다.

원자화된 문자열에 대한 자세한 내용은 XmlNameTable을 참조하십시오.

참고

기존 이름 테이블을 지정하면 이름 테이블의 모든 네임스페이스가 에 자동으로 추가 XmlNamespaceManager되지 않습니다. 및 를 RemoveNamespace 사용하여 AddNamespace 네임스페이스를 추가하거나 제거해야 합니다.

적용 대상

추가 정보