خطأ SignalR 500 عند استدعاء الخادم من العميل في موقع ASP.NET 4.5

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

  •  11-12-2019
  •  | 
  •  

سؤال

أنا أستخدم signalr مع asp.net 4.5 webforms. لم أتمكن من جعل العميل يتحدث إلى الخادم والعكس بالعكس. ما أريد تحقيقه هو ببساطة القدرة على اختبار كيفية تشغيل العميل تشغيل وظيفة خادم وكيف يمكن أن يؤدي الخادم إلى تشغيل وظيفة عميل. إليك الرمز الذي أستخدمه:

رمز جانب العميل (hitcounter.aspx) giveacodicetagpre.

رمز جانب خادم (app_code / hitcounterhub.cs) giveacodicetagpre.

أنا أقوم بتشغيل الرمز محليا على IIS7.5 لكنني أحصل عليه والخطأ عند تشغيل التعليمات البرمجية في Visual Studio 2012 أيضا.

الخطأ:

localhost / signdr / signdr / إرسال؟ النقل= serversentevents & connectionid= 400F1302-6C8E-418E-A14C-DA95F836A29D 500 (خطأ خادم داخلي)

باستخدام مصحح Chrome Debugger تظهر صفحة الخطأ: تعذر حل طريقة 'adhit'.

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

شكرا.

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

المحلول

السبب وراء عدم القدرة على حل طريقة Adhit الخاصة بك هو أن لديك نفس اسم الوظيفة على الخادم كما تفعل العميل.

AKA للاتصال بالخادم الذي تقوم به hub.addhit ("laksjdf").ولكن للاتصال بالعميل سيكون نفس الشيء: hub.addhit ("laksjdfldksj")؛وبالتالي هناك غموض.قم بتغيير اسم الوظائف الجانبية للعميل أو الخادم بحيث تكون فريدة من نوعها في مجال تسميةها.

سيتم إصلاح هذه المشكلة في الإصدار التالي من Signalr.

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