WCF នៅលើ .NET Framework៖ ការកំណត់ប្រូកស៊ីទិន្នន័យមេតាតាម HTTP GET
កំណត់រចនាសម្ព័ន្ធផ្លូវដកស្រង់ទិន្នន័យមេតារបស់ WCF ចាស់ រួមទាំងការនាំចូល HTTP ដោយឡែកពីអតិថិជនសេវា SOAP ចុងក្រោយ។
សម្រាប់ការដកស្រង់ទិន្នន័យមេតារបស់ WCF ក្នុងរបៀប HTTP GET នៅលើ .NET Framework 4.8.1 សូមកំណត់សំណើទិន្នន័យមេតាដំបូង មិនមែនត្រឹមតែអតិថិជន 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 ដែលបានបម្រុង ហើយប្រើរបៀប HttpGet សម្រាប់ URL របស់ WSDL។ ដាក់គណនីប្រូកស៊ីនៅលើវត្ថុនោះ; ការផ្ទៀងផ្ទាត់ម៉ាស៊ីនមេទិន្នន័យមេតាគឺដោយឡែក។
អនុវត្តតាមការនាំចូល ប្រសិនបើ WSDL ឫសជោគជ័យ ប៉ុន្តែការដោះស្រាយបរាជ័យនៅពេលក្រោយ។ WSDL និងស្គីមាផ្សេងទៀតអាចប្រើម៉ាស៊ីន ឬពិធីការផ្សេងៗ។
ជ្រើសរើសផ្នែកបន្ថែមដែលត្រូវគ្នាសម្រាប់របៀបដកស្រង់ផ្សេង។ WS-MetadataExchange ប្រើឆានែល ដែលហ៊ុកបង្កើតរបស់វាគឺ GetChannelFactory; ការកំណត់ binding និងប្រូកស៊ីរបស់វាមិនត្រូវបានជំនួសជាសកលដោយការជំនួស HttpWebRequest ទេ។
ប្រូកស៊ីកម្មវិធីលំនាំដើមអាចគ្រប់គ្រាន់ ពេលដែលសមាសភាគចាស់ទាំងអស់ដែលចូលរួមត្រូវចែករំលែកវា។ សាខារងគឺសម្រាប់កម្មសិទ្ធិទិន្នន័យមេតាច្បាស់លាស់ក្នុងគ្រួសារ API នេះ។ ការហៅ SOAP ដែលបានបង្កើតនៅតែត្រូវការការកំណត់ការដឹកជញ្ជូនពេលដំណើរការផ្ទាល់ខ្លួន។ សម្រាប់អតិថិជន BasicHttpBinding សូមពិនិត្យ ProxyAddress និង UseDefaultWebProxy ជាមួយគ្នា។