سؤال

أحاول تقديم خدمة WCF التي ستعمل مع JSON-P (قصة قصيرة طويلة، علينا أن نسمي المجال عبر خدمة الويب واستلم نسخة مكالمة، لذلك أحتاجها للعمل مع JSON-P ).

لقد وجدت رمزا نموذجا على MSDN (http://msdn.microsoft.com/en-us/library/cc716898.aspx.). إذا قمت باستخراج ملف zip وانتقل إلى عينات WCFWFCardPace WCF Extibility AJAX JSONP CS، أحصل على مشروع تم فيه إنشاء بعض الارتباطات والملحقات، والتي من شأنها أن تعطي WCF إمكانية البصق على المكالمة إلى وظيفة JS بعد إرجاع JSON.

لسوء الحظ، عندما أحاول نسخ هذا الرمز وتطبيقه في مشروعي لا يعمل.

أحصل على الخطأ التالية:

تعذر العثور على تمديد ملزمة التكوين 'system.servicemodel / bindings / jsonpbinding'. تحقق من تسجيل امتداد الملزم هذا بشكل صحيح في System.servicemodel / Extensions / bindingsxtensionsions وأنه يتم تهجئه بشكل صحيح.

يبدو الأمر كما لو أن المطورين في Microsoft تركوا بعض الكود الحيوي من التعليمات البرمجية المطلوبة لهذا العمل، وأنا لست متأكدا مما تركه أو ما يهدف إلى القيام به.

هل كان لدى أي شخص خبرة باستخدام WCF مع JSON-P؟

إذا كانت هناك طريقة للحصول على هذا المشروع العينة، فأنا آذان.

إذا كانت هناك طريقة بديلة للقيام بمكالمات خدمة الويب عبر المجال من جافا سكريبت إلى WCF، فأنا مهتم أيضا.

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

المحلول

هل يمكنك تضمين ملف Web.config الخاص بك في سؤالك؟

ترجع الرسالة التي تتلقاها إلى عنصر ملحقات غير موجود أو غير صالح في Web.config.

تحقق مما يلي

<system.serviceModel>
  <!-- client, behavior, and bindings -->   
  <extensions>
    <bindingElementExtensions>
      <add name="jsonpMessageEncoding"
           type="Namespace, Assembly, Version=X.X.X.X, Culture=neutral, PublicKeyToken=null"/>
    </bindingElementExtensions>
  </extensions>    
</system.serviceModel>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top