Share via


DiscoveryClientProtocol.DiscoveryClientResultsFile 類別

定義

表示 XML 文件的根項目 (Root Element),它包含叫用 (Invoke) WriteAll(String, String) 方法時所寫入的所有檔案的結果。

public: ref class DiscoveryClientProtocol::DiscoveryClientResultsFile sealed
public sealed class DiscoveryClientProtocol.DiscoveryClientResultsFile
type DiscoveryClientProtocol.DiscoveryClientResultsFile = class
Public NotInheritable Class DiscoveryClientProtocol.DiscoveryClientResultsFile
繼承
DiscoveryClientProtocol.DiscoveryClientResultsFile

範例

#using <System.Xml.dll>
#using <System.Web.Services.dll>
#using <System.dll>

using namespace System;
using namespace System::Web::Services::Discovery;
using namespace System::Net;
using namespace System::Xml;
using namespace System::Xml::Serialization;

int main()
{
   String^ outputDirectory = "c:\\InetPub\\wwwroot";
   DiscoveryClientProtocol^ myClient = gcnew DiscoveryClientProtocol;

   //  Use default credentials to access the URL being discovered.
   myClient->Credentials = CredentialCache::DefaultCredentials;
   try
   {
      DiscoveryDocument^ myDocument;

      // Discover the supplied URL to determine if it is a discovery document.
      myDocument = myClient->Discover( "http://localhost/MathService_cs.vsdisco" );
      myClient->ResolveAll();
      DiscoveryClientResultCollection^ myCollection = myClient->WriteAll( outputDirectory, "MyDiscoMap.discomap" );

      // Get the DiscoveryClientProtocol.DiscoveryClientResultsFile.
      DiscoveryClientProtocol::DiscoveryClientResultsFile ^ myResultFile = gcnew DiscoveryClientProtocol::DiscoveryClientResultsFile;
      XmlSerializer^ mySerializer = gcnew XmlSerializer( myResultFile->GetType() );
      XmlReader^ reader = gcnew XmlTextReader( "http://localhost/MyDiscoMap.discomap" );
      myResultFile = dynamic_cast<DiscoveryClientProtocol::DiscoveryClientResultsFile^>(mySerializer->Deserialize( reader ));

      // Get a collection of DiscoveryClientResult objects.
      DiscoveryClientResultCollection^ myResultcollection = myResultFile->Results;
      Console::WriteLine( "Referred file(s): " );
      System::Collections::IEnumerator^ myEnum = myResultcollection->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         DiscoveryClientResult^ myResult = safe_cast<DiscoveryClientResult^>(myEnum->Current);
         Console::WriteLine( myResult->Filename );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( e->Message );
   }
}
using System;
using System.Web.Services.Discovery;
using System.Net;
using System.Xml;
using System.Xml.Serialization;

class myDiscoveryClient_Results
{
   static void Main()
   {
      string outputDirectory = "c:\\InetPub\\wwwroot";
      DiscoveryClientProtocol myClient = new DiscoveryClientProtocol();

      //  Use default credentials to access the URL being discovered.
      myClient.Credentials = CredentialCache.DefaultCredentials;
      try
      {
         DiscoveryDocument myDocument;

         // Discover the supplied URL to determine if it is a discovery document.
         myDocument = myClient.Discover("http://localhost/MathService_cs.vsdisco");
         myClient.ResolveAll();
         DiscoveryClientResultCollection myCollection =
             myClient.WriteAll(outputDirectory, "MyDiscoMap.discomap");
         // Get the DiscoveryClientProtocol.DiscoveryClientResultsFile.
         DiscoveryClientProtocol.DiscoveryClientResultsFile myResultFile =
             new DiscoveryClientProtocol.DiscoveryClientResultsFile();
         XmlSerializer mySerializer = new XmlSerializer(myResultFile.GetType());
         XmlReader reader = new XmlTextReader("http://localhost/MyDiscoMap.discomap");
         myResultFile = (DiscoveryClientProtocol.DiscoveryClientResultsFile)
             mySerializer.Deserialize(reader);

         // Get a collection of DiscoveryClientResult objects.
         DiscoveryClientResultCollection myResultcollection = myResultFile.Results;

         Console.WriteLine("Referred file(s): ");
         foreach(DiscoveryClientResult myResult in myResultcollection)
         {
             Console.WriteLine(myResult.Filename);
         }
      }
      catch(Exception e)
      {
          Console.WriteLine(e.Message);
      }
   }
}
Imports System.Web.Services.Discovery
Imports System.Net
Imports System.Xml
Imports System.Xml.Serialization

Class myDiscoveryClient_Results
   
   Shared Sub Main()
      Dim outputDirectory As String = "c:\InetPub\wwwroot"
      Dim myClient As New DiscoveryClientProtocol()
      
      ' Use default credentials to access the URL being discovered.
      myClient.Credentials = CredentialCache.DefaultCredentials
      Try
          Dim myDocument As DiscoveryDocument
          ' Discover the supplied URL to determine if it is a discovery document.
          myDocument = myClient.Discover("http://localhost/MathService_vb.vsdisco")
          myClient.ResolveAll()
          Dim myCollection As DiscoveryClientResultCollection = _ 
              myClient.WriteAll(outputDirectory, "MyDiscoMap.discomap")
         ' Get the DiscoveryClientProtocol.DiscoveryClientResultsFile.
         Dim myResultFile As New DiscoveryClientProtocol.DiscoveryClientResultsFile()
         Dim mySerializer As New XmlSerializer(myResultFile.GetType())
         Dim reader = New XmlTextReader("http://localhost/MyDiscoMap.discomap")
         myResultFile = CType(mySerializer.Deserialize(reader), _ 
             DiscoveryClientProtocol.DiscoveryClientResultsFile)

         ' Get a collection of 'DiscoveryClientResult' objects.
         Dim myResultcollection As DiscoveryClientResultCollection = _
             myResultFile.Results

         Console.WriteLine("Referred file(s) : ")
         Dim myResult As DiscoveryClientResult
         For Each myResult In  myResultcollection
            Console.WriteLine(myResult.Filename)
         Next myResult
      Catch e As Exception
         Console.WriteLine(e.Message)
      End Try
   End Sub
End Class

備註

當您叫用 方法時 DiscoveryClientProtocol.WriteAll ,所有已解析的探索檔和包含所有檔案對應之檔案的檔案都會儲存至目錄。 對應檔案會在 XML 中描述,根項目為 DiscoveryClientProtocol.DiscoveryClientResultsFile ;此類別會傳遞至 XmlSerializer 類別,以序列化結果。

建構函式

DiscoveryClientProtocol.DiscoveryClientResultsFile()

初始化 DiscoveryClientProtocol.DiscoveryClientResultsFile 類別的新執行個體。

屬性

Results

取得 DiscoveryClientResult 物件的集合。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於