DiscoveryClientProtocol.ResolveAll Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Rozwiązuje wszystkie odwołania do dokumentów odnajdywania, schematów definicji schematu XML (XSD) i opisów usług we References właściwości, a także odwołań znalezionych w dokumentach odnajdywania, do których odwołuje się odwołanie.
public:
void ResolveAll();
public void ResolveAll ();
member this.ResolveAll : unit -> unit
Public Sub ResolveAll ()
Przykłady
Poniższy przykład kodu to formularz internetowy, który wypełnia DataGrid obiekt ze szczegółami dotyczącymi dokumentów we Documents właściwości wraz z odwołaniami znajdującymi się w każdym dokumencie podczas odnajdywania usług sieci Web XML. Metoda PopulateGrid
wypełnia metodę DataGrid wynikami wywołania DiscoverAny , po którym następuje wywołanie metody ResolveAll.
protected void Discover_Click(object Source, EventArgs e)
{
// Specify the URL to discover.
string sourceUrl = DiscoURL.Text;
// Specify the URL to save discovery results to or read from.
string outputDirectory = DiscoDir.Text;
DiscoveryClientProtocol client = new DiscoveryClientProtocol();
// Use default credentials to access the URL being discovered.
client.Credentials = CredentialCache.DefaultCredentials;
try
{
DiscoveryDocument doc;
// Discover the URL for any discoverable documents.
doc = client.DiscoverAny(sourceUrl);
// Resolve all possible references from the supplied URL.
client.ResolveAll();
}
catch ( Exception e2)
{
DiscoveryResultsGrid.Columns.Clear();
Status.Text = e2.Message;
}
// If documents were discovered, display the results in a data grid.
if (client.Documents.Count > 0)
PopulateGrid(client);
// Save the discovery results to disk.
DiscoveryClientResultCollection results = client.WriteAll(outputDirectory, "results.discomap");
Status.Text = "The following file holds the links to each of the discovery results: <b>" +
Path.Combine(outputDirectory,"results.discomap") + "</b>";
}
Public Sub Discover_Click(Source As Object, e as EventArgs )
' Specify the URL to discover.
Dim sourceUrl as String = DiscoURL.Text
' Specify the URL to save discovery results to or read from.
Dim outputDirectory As String = DiscoDir.Text
Dim client as DiscoveryClientProtocol = new DiscoveryClientProtocol()
' Use default credentials to access the URL being discovered.
client.Credentials = CredentialCache.DefaultCredentials
Try
Dim doc As DiscoveryDocument
' Discover the URL for any discoverable documents.
doc = client.DiscoverAny(sourceUrl)
' Resolve all possible references from the supplied URL.
client.ResolveAll()
Catch e2 As Exception
DiscoveryResultsGrid.Columns.Clear()
Status.Text = e2.Message
End Try
' If documents were discovered, display the results in a data grid.
If (client.Documents.Count > 0) Then
'populate our Grid with the discovery results
PopulateGrid(client)
End If
' Save the discovery results to disk.
Dim results As DiscoveryClientResultCollection
results = client.WriteAll(outputDirectory, "results.discomap")
Status.Text = "The following file holds the links to each of the discovery results: <b>" + _
Path.Combine(outputDirectory,"results.discomap") + "</b>"
End Sub
Uwagi
ResolveAll usuwa wszystkie prawidłowe odwołania, które znajduje i umieszcza je we Documents właściwości. Zarówno ResolveAll , i ResolveOneLevel pobierz i zweryfikuj schematy XSD i opisy usług we References właściwości. Te dwie metody różnią się jednak sposobem obsługi dokumentów odnajdywania. ResolveOneLevel rozwiązuje wszystkie odwołania w dokumentach odnajdywania w obrębie References właściwości; jeśli dokument odnajdywania zawiera odwołania do innych dokumentów odnajdywania, ResolveOneLevel rozpoznaje tylko te dokumenty odnajdywania. Dokumenty odnajdywania znalezione w tych dokumentach odnajdywania zagnieżdżonych na jednym poziomie nie są rozwiązywane przez ResolveOneLevelprogram ; podczas gdy ResolveAll rozwiązuje je wszystkie. ResolveAll program kontynuuje rozpoznawanie odwołań w zagnieżdżonych dokumentach odnajdywania, dopóki nie ma więcej odwołań.
Błędy występujące podczas procesu weryfikacji wykonywanego przez ResolveAll program nie są zgłaszane w momencie wystąpienia, ale raczej zbierane i dodawane do Errors właściwości.