次の方法で共有


DiscoveryClientProtocol.ReadAll メソッド

保存された探索ドキュメントのマップが格納されているファイルを読み取ります。その探索ドキュメントには、そのファイルが参照している探索ドキュメント、XML スキーマ定義 (XSD) スキーマ、およびサービスの説明を持つ Documents プロパティと References プロパティが読み込まれています。

Public Function ReadAll( _
   ByVal topLevelFilename As String _) As DiscoveryClientResultCollection
[C#]
public DiscoveryClientResultCollection ReadAll(stringtopLevelFilename);
[C++]
public: DiscoveryClientResultCollection* ReadAll(String* topLevelFilename);
[JScript]
public function ReadAll(
   topLevelFilename : String) : DiscoveryClientResultCollection;

パラメータ

  • topLevelFilename
    読み込む対象となるファイルの名前。このファイルには保存されている探索ドキュメントのマップが格納されています。

戻り値

保存されている探索ドキュメントのマップを格納しているファイルで見つかった結果が格納されている DiscoveryClientResultCollection 。ファイル形式は DiscoveryClientProtocol.DiscoveryClientResultsFile クラスで XML にシリアル化されています。ただし、通常は WriteAll メソッドまたは Disco.exe だけを使用してファイルを作成します。

解説

保存されている探索ドキュメントのマップを格納しているファイルは、 WriteAll メソッドまたは Disco.exe により作成できます。

ファイルが現在のディレクトリにない場合は、 topLevelFilename に絶対パスを含める必要があります。

使用例

[Visual Basic, C#] ReadAll メソッドを使用して既存のディスカバリ マップ ドキュメント内に見つかったドキュメントと参照に関する詳細を DataGrid に読み込む Web フォームのコード例を次に示します。

 
Public Sub Discover_Click(Source As Object, e as EventArgs )
   ' Specify the URL to read the discovery results from.
   Dim outputDirectory As String = DiscoDir.Text

   Dim client as DiscoveryClientProtocol = new DiscoveryClientProtocol()
   ' Use default credentials to access files containing the previously saved discovery results.
   client.Credentials = CredentialCache.DefaultCredentials
   Try 
        Dim doc As DiscoveryDocument
  
    ' Read in existing discovery results.
     Dim results As DiscoveryClientResultCollection 
     results = client.ReadAll(Path.Combine(DiscoDir.Text,"results.discomap"))

   Catch e2 As Exception
          DiscoveryResultsGrid.Columns.Clear()
       Status.Text = e2.Message
   End Try

   ' If disocvery documents existed in the supplied folder, display the results in a data grid.
    If (client.Documents.Count > 0) Then
         ' Populate the data grid with the discovery results.
     PopulateGrid(client)
    End If
End Sub

[C#] 
protected void Discover_Click(object Source, EventArgs e)
{
 // Specify the URL to read the discovery results from.
 string outputDirectory = DiscoDir.Text;

     DiscoveryClientProtocol client = new DiscoveryClientProtocol();
 // Use default credentials to access the files containing the discovery results.
     client.Credentials = CredentialCache.DefaultCredentials;

     try {
          DiscoveryDocument doc;
   // Read in existing discovery results.
       DiscoveryClientResultCollection results = client.ReadAll(Path.Combine(DiscoDir.Text,"results.discomap"));
     }
     catch ( Exception e2) 
     {
       DiscoveryResultsGrid.Columns.Clear();
       Status.Text = e2.Message;
     }
 // If discovery documents existed in the supplied folder, display the results in a data grid.
     if (client.Documents.Count > 0)
     PopulateGrid(client);
  }

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

必要条件

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

参照

DiscoveryClientProtocol クラス | DiscoveryClientProtocol メンバ | System.Web.Services.Discovery 名前空間