次の方法で共有


DiscoveryDocument クラス

探索ドキュメントを表します。このクラスは継承できません。

この型のすべてのメンバの一覧については、DiscoveryDocument メンバ を参照してください。

System.Object
   System.Web.Services.Discovery.DiscoveryDocument

NotInheritable Public Class DiscoveryDocument
[C#]
public sealed class DiscoveryDocument
[C++]
public __gc __sealed class DiscoveryDocument
[JScript]
public class DiscoveryDocument

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

XML Web サービス探索には、指定 URL で使用できる XML Web サービスの探索が含まれます。通常、URL は探索ドキュメントを指します。探索ドキュメントのファイル名拡張子は通常 .disco です。XML ドキュメントである探索ドキュメントには、サービスの説明、XML スキーマ定義 (XSD) 言語スキーマ、他の探索ドキュメントなどの XML Web サービスがあるかどうかに関する情報への参照が含まれています。このクラスは、探索ドキュメントの内容を表します。 References プロパティには探索ドキュメント内に含まれる参照のリストが格納されています。

使用例

[Visual Basic, C#, C++] Read を使用してファイルから探索ドキュメントを読み込み、このドキュメントを Write メソッドを使用してファイルに書き込むコード例を次に示します。

 
Imports System
Imports System.Xml
Imports System.IO
Imports System.Web.Services.Discovery
Imports System.Collections


Public Class DiscoveryDocument_Example
   
   Shared Sub Main()
      Try
         ' Create an object of the 'DiscoveryDocument'.
         Dim myDiscoveryDocument As New DiscoveryDocument()
         
         ' Create an XmlTextReader with the sample file.
         Dim myXmlTextReader As New XmlTextReader("https://localhost/example_vb.disco")
         
         ' Read the given XmlTextReader.
         myDiscoveryDocument = DiscoveryDocument.Read(myXmlTextReader)
         
         ' Write the DiscoveryDocument into the 'TextWriter'.
         Dim myFileStream As New FileStream("log.txt", FileMode.OpenOrCreate, FileAccess.Write)
         Dim myStreamWriter As New StreamWriter(myFileStream)
         myDiscoveryDocument.Write(myStreamWriter)

         myStreamWriter.Flush()
         myStreamWriter.Close()
         ' Display the contents of the DiscoveryDocument onto the console.
         Dim myFileStream1 As New FileStream("log.txt", FileMode.OpenOrCreate, FileAccess.Read)
         Dim myStreamReader As New StreamReader(myFileStream1)
         
         ' Set the file pointer to the begin.
         myStreamReader.BaseStream.Seek(0, SeekOrigin.Begin)
         Console.WriteLine("The contents of the DiscoveryDocument are-")
         While myStreamReader.Peek() > - 1
            Console.WriteLine(myStreamReader.ReadLine())
         End While
         myStreamReader.Close()
      Catch e As Exception
         Console.WriteLine("Exception raised : {0}", e.Message.ToString())
      End Try
   End Sub 'Main
End Class 'DiscoveryDocument_Example

[C#] 
using System;
using System.Xml;
using System.IO;
using System.Web.Services.Discovery;
using System.Collections;

public class DiscoveryDocument_Example
{
   static void Main()
   {
      try
      {
         // Create an object of the 'DiscoveryDocument'.
         DiscoveryDocument myDiscoveryDocument = new DiscoveryDocument();

         // Create an XmlTextReader with the sample file.
         XmlTextReader myXmlTextReader = new 
            XmlTextReader( "https://localhost/example_cs.disco" );

         // Read the given XmlTextReader.
         myDiscoveryDocument = DiscoveryDocument.Read( myXmlTextReader );

         // Write the DiscoveryDocument into the 'TextWriter'.
         FileStream myFileStream = new 
                  FileStream( "log.txt", FileMode.OpenOrCreate, FileAccess.Write );
         StreamWriter myStreamWriter = new StreamWriter( myFileStream );
         myDiscoveryDocument.Write( myStreamWriter );

         myStreamWriter.Flush();  
         myStreamWriter.Close(); 

         // Display the contents of the DiscoveryDocument onto the console.
         FileStream myFileStream1 = new
                        FileStream( "log.txt", FileMode.OpenOrCreate, FileAccess.Read );
         StreamReader myStreamReader = new StreamReader( myFileStream1 );        

         // Set the file pointer to the begin.
         myStreamReader.BaseStream.Seek(0, SeekOrigin.Begin); 
         Console.WriteLine( "The contents of the DiscoveryDocument are-" );
         while ( myStreamReader.Peek() > -1 ) 
         {
            Console.WriteLine( myStreamReader.ReadLine() );
         }
         myStreamReader.Close();
      }
      catch( Exception e )
      {
         Console.WriteLine( "Exception raised : {0}", e.Message);
      }
   }
}

[C++] 
#using <mscorlib.dll>
#using <System.Xml.dll>
#using <System.Web.Services.dll>
using namespace System;
using namespace System::Xml;
using namespace System::IO;
using namespace System::Web::Services::Discovery;
using namespace System::Collections;

int main()
{
   try 
   {
      // Create an Object* of the 'DiscoveryDocument'.
      DiscoveryDocument* myDiscoveryDocument = new DiscoveryDocument();

      // Create an XmlTextReader with the sample file.
      XmlTextReader* myXmlTextReader = new XmlTextReader(S"https://localhost/example_cs.disco");

      // Read the given XmlTextReader.
      myDiscoveryDocument = DiscoveryDocument::Read(myXmlTextReader);

      // Write the DiscoveryDocument into the 'TextWriter'.
      FileStream* myFileStream = new FileStream(S"log.txt", FileMode::OpenOrCreate, FileAccess::Write);
      StreamWriter* myStreamWriter = new StreamWriter(myFileStream);
      myDiscoveryDocument->Write(myStreamWriter);

      myStreamWriter->Flush();  
      myStreamWriter->Close(); 

      // Display the contents of the DiscoveryDocument onto the console.
      FileStream* myFileStream1 = new FileStream(S"log.txt", FileMode::OpenOrCreate, FileAccess::Read);
      StreamReader* myStreamReader = new StreamReader(myFileStream1);        

      // Set the file pointer to the begin.
      myStreamReader->BaseStream -> Seek(0, SeekOrigin::Begin); 
      Console::WriteLine(S"The contents of the DiscoveryDocument are-");
      while (myStreamReader->Peek() > -1) {
         Console::WriteLine(myStreamReader->ReadLine());
      }
      myStreamReader->Close();
   } 
   catch (Exception* e) 
   {
      Console::WriteLine(S"Exception raised : {0}", e -> Message);
   }
}

[Visual Basic, C#, C++]

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Web.Services.Discovery

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System.Web.Services (System.Web.Services.dll 内)

参照

DiscoveryDocument メンバ | System.Web.Services.Discovery 名前空間 | DiscoveryClientProtocol