ماذا يحدث عندما يحدد عميل WCF نقاط نهاية متعددة لنفس العقد؟

StackOverflow https://stackoverflow.com/questions/1888233

سؤال

سوف تستهلك من كل منهم؟ هل سيقوم بإلقاء استثناء؟

هل كانت مفيدة؟

المحلول

يمكنك الحصول على نقاط نهاية متعددة لنفس العقد وعناوين مختلفة في تكوين Clieint الخاص بك، لا مشكلة.

يجب أن تكون مفصولة فريدة من نوعها name= سمة على <endpoint> بطاقة شعار.

<client>
  <endpoint name="tcpEndpoint"
            address="net.tcp://server:8888/SomeService"
            binding="netTcpBinding"
            contract="IYourService" />
  <endpoint name="httpEndpoint"
            address="http://server:8777/SomeService"
            binding="basicHttpBinding"
            contract="IYourService" />
</client>

عند إنشاء وكيل العميل الخاص بك، تحتاج إلى توفير اسم نقطة النهاية التي تريد استخدامها:

YourClient client = new YourClient("netTcpEndpoint");

لم يعد بإمكانك الآن إنشاء عميلك ونتوقعه للعثور على "نقطة النهاية" للاستخدام، نظرا لوجود عدة (وليس هناك طريقة لتحديد واحدة ك "الافتراضي" الذي يتم استخدامه إذا لم يكن هناك شيء محدد، لسوء الحظ).

بخلاف ذلك - لا ينبغي أن تنشأ أي مشاكل، على ما أعتقد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top