مشكلة التوافق مع الإصدارات السابقة من WCF

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

  •  08-06-2019
  •  | 
  •  

سؤال

لدي خدمة WCF يجب أن أشير إليها من مشروع .net 2.0.

لقد حاولت الإشارة إليه باستخدام "إضافة مرجع الويب"طريقة ولكنها تفسد المعلمات.

على سبيل المثال، لدي طريقة في الخدمة تتوقع ملف char[] ليتم تمريرها، ولكن عندما أقوم بإضافة مرجع الويب، تتوقع الطريقة int[].

لذلك حاولت الإعداد com.svcutil وعملت...نوع من.
لم أتمكن من تجميع فئة الخدمة إلا عن طريق إضافة مجموعة من نت 3.0 إشارات إلى بلدي صافي 2.0 مشروع.لم يكن هذا جيدًا مع المهندس المعماري لذا اضطررت إلى القيام بذلك (وربما للأفضل أيضًا).

لذلك كنت أتساءل عما إذا كان لدى أي شخص أي مؤشرات أو موارد حول كيفية إعداد ملف صافي 2.0 مشروع للإشارة إلى أ خدمة دبليو سي إف.

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

المحلول

أحد تلك الحالات التي تحتاج إلى تحرير WSDL.لبداية أداة مفيدة

http://codeplex.com/storm

نصائح أخرى

ما هو الربط الذي تستخدمه - أعتقد أنه إذا التزمت بربط basicHttp، فيجب أن تكون قادرًا على إنشاء وكيل باستخدام أسلوب "إضافة مرجع ويب" من مشروع .net 2؟

ربما إذا قمت بنشر تعريف العقد/الواجهة فقد يكون ذلك مفيدًا؟

هتاف ريتشارد

شكرا على الموارد.لقد ساعدني ذلك بالتأكيد في اختبار خدمة الويب، لكنه لم يساعدني كثيرًا في استخدام خدمة WCF في تطبيق .net 2.0 الخاص بي.

ما انتهى بي الأمر في النهاية هو العودة إلى المهندسين المعماريين وشرح أن ملفات 3.0 dll التي كنت بحاجة للإشارة إليها قد تم تجميعها مرة أخرى لتشغيلها على 2.0 CLR.نحن لا نحب الحل بالضرورة، ولكننا سنستمر به في الوقت الحالي لأنه لا يبدو أن هناك الكثير من البدائل القابلة للتطبيق

كنت أستخدم رابط basicHttp ولكن المشكلة كانت في الواقع مع XMLSerializer.لا يتعرف بشكل صحيح على wsdl الذي تم إنشاؤه بواسطة WCF (حتى مع روابط basicHttp) لأي شيء آخر غير أنواع القيمة الأساسية.

لقد تمكنا من التغلب على ذلك عن طريق إضافة المرجع إلى 3.0 dll واستخدام مُسلسل datacontract.

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