2010-10-04 32 views
5

मेरे पास एक ऐप फैब्रिक सेवा है जिसे मैं परीक्षण करना चाहता हूं। (http://xxx.cloudapp.net:8081/service.svc)।
मैं एक सांत्वना अनुप्रयोग बनाया है और सेवा के लिए एक सेवा संदर्भ जोड़ा गया है और निम्न त्रुटि मिला:Azure: फ़ाइल या असेंबली लोड नहीं कर सका 'माइक्रोसॉफ्ट। सेवाबस

Could not load file or assembly 'Microsoft.ServiceBus, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

मैं सी से Microsoft.ServiceBus के लिए एक संदर्भ कहा: \ Program Files (x86) \ विंडोज Azure मंच AppFabric एसडीके \ V1.0 \ विधानसभाओं \ NET4.0

मैं सभी विधानसभाओं अपने प्रोजेक्ट में स्थानीय = सत्य प्रतिलिपि करने के लिए, के रूप में यहाँ का सुझाव दिया सेट: http://msdn.microsoft.com/en-us/library/ee706702.aspx

अतिरिक्त कारण परिश्रम: मैं लाल रंग में Microsoft.ServiceBus खोला -गेट का परावर्तक और पुष्टि की है कि यह सही संस्करण है। सिर्फ किक्स के लिए, मैंने परावर्तक में संदर्भित प्रत्येक असेंबली के संदर्भ भी जोड़े और स्थानीय = सत्य की प्रतिलिपि बनाने के लिए सभी संदर्भ सेट किए।

कोई अन्य विचार?

... पीटर

+0

पर क्लाइंट प्रोफाइल द्वारा समर्थित नहीं है, जब आप इसे कॉल करते समय सेवा द्वारा फेंक दिया जा रहा है या जब आप इसे चलाने का प्रयास करते हैं तो कंसोल ऐप द्वारा यह? – knightpfhor

+0

जब मैं सेवा पर किसी एक तरीके से कॉल करने का प्रयास करता हूं तो इसे कंसोल ऐप से फेंक दिया जा रहा है। प्रतिक्रिया के लिए –

उत्तर

3

आप Microsoft.ServiceBus.dll संदर्भ है, यह स्थापित स्थान, जैसे से संदर्भ,

C:\Program Files (x86)\Windows Azure platform AppFabric
SDK\V1.0\Assemblies\NET4.0\Microsoft.ServiceBus.dll

... नहीं GAC से, और सेट की प्रतिलिपि स्थानीय सच में

आपको जो कुछ भी आप Azure में तैनात कर रहे हैं, उसे करने की ज़रूरत है; Microsoft.ServiceBus.dll को आपकी प्रोजेक्ट के साथ पैक करने की आवश्यकता है क्योंकि यह Azure में डिफ़ॉल्ट रूप से उपलब्ध नहीं है।

यदि आप फिडलर को आग लगाते हैं, तो सेवा को कॉल करते समय आपको 500 त्रुटि दिखाई देती है। यह साबित करता है कि अपवाद आपके कॉलिंग एप्लिकेशन में नहीं है।

1

ServiceBus dll Azure बक्से पर स्थापित नहीं है

  1. यकीन है कि विधानसभा को निर्दिष्ट करने के लिए अपने संदर्भ बनाने प्रतिलिपि स्थानीय
  2. इसके अलावा
  3. सुनिश्चित करें कि आप सेवा बस के लिए संदर्भ की जरूरत नहीं है बनाने के ऊपरी परियोजनाएं हैं जो स्थानीय नकल न करें में dll (यह आपकी समस्या हो सकता है अगर आप 1 से ऊपर सत्यापित किया है)

आप y के लिए सीएसएक्स पेड़ जाँच कर सकते हैं हमारे एज़ूर बिल्ड फ़ोल्डर को यह देखने के लिए कि अंतिम पैकेज में असेंबली की प्रतिलिपि बनाई जा रही है या नहीं। यह अज़ूर को अपलोड करने या देव कपड़े शुरू करने से बहुत तेज़ है।

कि आपकी समस्या का समाधान करना चाहिए

+0

धन्यवाद राजेश। मुझे समझ में नहीं आया कि सर्विसबस द्वारा आपके द्वारा क्या मतलब है Azure बॉक्स पर स्थापित नहीं है। जिस तरह से मैंने इसे समझ लिया, यह समझ में नहीं आया कि एमएस अपने स्वयं के बक्से पर Azure के लिए एक आवश्यक डीएल स्थापित नहीं करेगा।यह पता चला है कि मुझे इसे एज़ूर प्रोजेक्ट में जोड़ने की ज़रूरत है, जो अजीब बक्से पर स्थापित हो जाता है। –

4

सुनिश्चित करें कि आप '.NET Framework 4 क्लाइंट प्रोफ़ाइल' से '.NET Framework 4' पर लक्ष्य फ्रेमवर्क (प्रोजेक्ट गुण/एप्लिकेशन टैब) को बदल दें। मुझे एक समान पोस्ट मिला और यही मेरी मदद करता था। मेरा मानना ​​है कि यह इस तथ्य के साथ है कि Microsoft.ServiceBus को .NET 4.

+0

+1 यह पुष्टि कर सकता है कि यह मेरे लिए काम करता है – SeanCocteau

संबंधित मुद्दे