Airson meitidàta WCF fhaighinn ann am modh HTTP GET air .NET Framework 4.8.1, rèitich an t-iarrtas meitidàta na bu thràithe seach dìreach an neach-cleachdaidh SOAP deireannach. Faodaidh an dubhan dìonta GetWebRequest aige slighe air a stiùireadh fa leth a chur an sàs:

class RoutedMetadataClient : MetadataExchangeClient
{
    private readonly IWebProxy route;

    public RoutedMetadataClient(IWebProxy route)
    {
        this.route = route;
    }

    protected override HttpWebRequest GetWebRequest(
        Uri location, string dialect, string identifier)
    {
        HttpWebRequest request =
            base.GetWebRequest(location, dialect, identifier);
        request.Proxy = route;
        return request;
    }
}

Tha na seòrsaichean a' tighinn bho System.Net agus System.ServiceModel.Description. Tog an neach-cleachdaidh seo leis an WebProxy a tha san amharc agus cleachd modh HttpGet airson URL an WSDL. Cuir a' chunntas proxy air an nì sin; tha dearbhadh an t-seirbheisiche meitidàta air leth.

Lean na h-in-mhalairt ma shoirbhicheas leis an WSDL freumh ach ma dh'fhàillicheas an rùn nas fhaide air adhart. Faodaidh WSDL agus sgeamaichean eile aoighean no protocolaidhean eadar-dhealaichte a chleachdadh.

Tagh an leudachadh co-fhreagarrach airson modh togail eile. Bidh WS-MetadataExchange a' cleachdadh sianal, agus is e an dubhan cruthachaidh aige GetChannelFactory; chan eil na roghainnean binding agus proxy aige air an cur nan àite gu h-uile-choitcheann le tar-sgrìobhadh HttpWebRequest.

Dh'fhaodadh proxy tagraidh bunaiteach a bhith gu leòr nuair a bu chòir do gach co-phàirt dìleabach a tha an sàs a roinn. Tha an fo-chlas airson seilbh meitidàta follaiseach taobh a-staigh an teaghlaich API seo. Bidh feum aig gairmean SOAP a chaidh a chruthachadh fhathast air an rèiteachadh giùlain runtime aca fhèin. Airson neach-cleachdaidh BasicHttpBinding, thoir sùil air ProxyAddress agus UseDefaultWebProxy còmhla.

Artaigilean co-cheangailte