WCF په .NET Framework کې: د HTTP GET میټاډاټا پراکسي ترتیبات
د WCF میټاډاټا ترلاسه کولو زوړ لار، د HTTP وارداتو په شمول، له وروستي SOAP خدماتي کلاینټ څخه جلا تنظیم کړئ.
په .NET Framework 4.8.1 کې د HTTP GET حالت کې د WCF میټاډاټا ترلاسه کولو لپاره، یوازې وروستی SOAP کلاینټ نه، بلکې پخوانی میټاډاټا غوښتنه تنظیم کړئ. د دې خوندي GetWebRequest هنګ کولی شي په جلا توګه اداره شوې لار پلي کړي:
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;
}
}ډولونه له System.Net او System.ServiceModel.Description څخه راځي. دا کلاینټ په پام کې نیول شوي WebProxy سره جوړ کړئ او د WSDL URL لپاره HttpGet حالت وکاروئ. د پراکسي حساب په هغه شی کې کیږدئ؛ د میټاډاټا سرور تصدیق جلا دی.
که ریښه WSDL بریالي شوه خو حل وروسته ناکام شو، واردات تعقیب کړئ. نور WSDL او سکیمې کولی شي مختلف هوسټونه یا پروتوکولونه وکاروي.
د بل ترلاسه کولو حالت لپاره اړوند غزونه غوره کړئ. WS-MetadataExchange یوه چینل کاروي، چې د جوړولو هنګ یې GetChannelFactory دی؛ د هغې binding او پراکسي ترتیبات په نړیوال ډول د HttpWebRequest له لارې نه بدلیږي.
د اپلیکیشن ډیفالټ پراکسي کولی شي کافي وي کله چې ټول ګډون کوونکي زاړه برخې باید یې شریک کړي. فرعي ټولګه په دې API کورنۍ کې د میټاډاټا روښانه مالکیت لپاره ده. تولید شوي SOAP غږونه لا هم خپل د runtime ترانسپورت ترتیباتو ته اړتیا لري. د BasicHttpBinding کلاینټ لپاره، ProxyAddress او UseDefaultWebProxy یوځای وګورئ.