2010-10-12 10 views
11

मैंने एक छोटा सिल्वरलाइट 4.0/आरआईए सेवा अनुप्रयोग बनाया और इसका परीक्षण किया। मैंने घर पर एक मशीन पर ऐप विकसित किया और उसे काम पर उत्पादन डोमेन में स्थानांतरित करने की आवश्यकता थी। मैंने इसे स्रोत भंडार में दबाकर और फिर काम पर एक देव मशीन पर क्लोन करके किया। यह दोनों स्थानों में एक त्रुटि के बिना बनाता है।प्रदान की गई यूआरआई योजना 'फ़ाइल' अमान्य उम्मीद है 'http'

समस्या तब होती है जब मैं नए स्थान पर डीबग करने का प्रयास करता हूं।

The provided URI scheme 'file' is invalid expected 'http' 

मैं डिबगर आधारित यूआरआई बल्कि एक HTTP यूआरआई से फाइल के साथ चलाने के लिए प्रयास कर रहा है कि मिल: डोमेन संदर्भ पर पहले 'लोड()' विधि में मैं निम्नलिखित त्रुटि मिलती है। पर क्यों? और इसे किस प्रकार से ठीक किया जाए।

एसओ के माध्यम से खोज अमान्य यूआरआई योजनाओं के बारे में कुछ समान त्रुटियों को वापस कर दिया, लेकिन उनमें से कोई भी मुझे इस विशिष्ट मुद्दे से मदद नहीं करता।

धन्यवाद, जिम

उत्तर

27

सुनिश्चित करें कि आपकी स्टार्टअप प्रोजेक्ट वेब प्रोजेक्ट है, न कि सिल्वरलाइट प्रोजेक्ट स्वयं।

+4

या, यदि ब्राउज़र से डीबगजिन हो, तो सिल्वरलाइट प्रोजेक्ट को स्टार्टअप के रूप में सेट करें, लेकिन "डीबग" के तहत, Silverlight प्रोजेक्ट की सेटिंग्स में, सर्वर प्रोजेक्ट को Silverlight प्रोजेक्ट के बजाए आउट-ऑफ-ब्राउज़र एप्लिकेशन के रूप में सेट करें। पूरी तरह से सहज नहीं है, लेकिन आपको "फ़ाइल: //" समस्या से छुटकारा पाने के लिए ऐसा करना है। – JoeCool

+1

धन्यवाद जिसने मदद की। अगर कोई इसे प्राप्त करता है तो मैं थोड़ा सा जोड़ना चाहता हूं। मेरी त्रुटि तब हुई जब मैंने अपनी सूओ फ़ाइल हटा दी, मुझे लगता है कि स्टार्ट प्रोजेक्ट का संदर्भ इस फाइल में है। – ramnz

0

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

+0

प्रोग्राम स्थानीय फ़ाइलों को स्वीकार करने के लिए नहीं लिखा गया है। त्रुटि तब होती है जब सिल्वरलाइट मॉड्यूल आरआईए सेवा विधि कॉल कर रहा है। इसने मूल विकास पर्यावरण पर काम किया और केवल एक और समान (जहां तक ​​मैं कह सकता हूं, लेकिन स्पष्ट रूप से काफी नहीं) पर्यावरण के बाद जाने में विफल रहा। –

1

शायद यह हो रहा है कि सिल्वरलाइट क्लाइंट एप्लिकेशन "फ़ाइल: //" प्रोटोकॉल का उपयोग कर सर्वर-साइड आरआईए सेवा वेब सेवा के साथ संवाद करने की कोशिश कर रहा है।
क्या आपने सिल्वरलाइट एक्सएपी फ़ाइल को सीधे 'http: // "यूआरएल के माध्यम से सर्वर की फाइल सिस्टम से लॉन्च किया है? सिल्वरलाइट उसी प्रोटोकॉल का उपयोग करने की कोशिश कर रहा है, जिसका इस्तेमाल एक्सएपी फाइल प्राप्त करने के लिए किया जाता है।
इसी कारण, विजुअल स्टूडियो से एप्लिकेशन लॉन्च करते समय, वेब प्रोजेक्ट को सिल्वरलाइट (क्लाइंट) प्रोजेक्ट की बजाय स्टार्टअप प्रोजेक्ट के रूप में सेट करें।

1

यदि आप ओओबी (ब्राउज़र से बाहर) चला रहे हैं और फिर डीबग करना चाहते हैं, तो आप स्टार्टअप प्रोजेक्ट प्रोजेक्ट को स्टार्ट अप प्रोजेक्ट के रूप में सेट करने की आवश्यकता है, सर्वर प्रोजेक्ट के भीतर, अपने '* TestPage.html' और 'स्टार्ट पेज के रूप में सेट करें' पर राइट क्लिक करें। फिर, अगर आपको त्रुटि मिलती है ...

The provided URI scheme 'file' is invalid expected 'http' 

फिर सिल्वरलाइट क्लाइंट के गुण पृष्ठ खोलें और UNCHECK "ब्राउज़र से चल रहे एप्लिकेशन को सक्षम करें" पर क्लिक करें, सहेजें पर क्लिक करें और फिर सेटिंग को वापस जांचें और इसे काम करना चाहिए। देखें ... http://blogs.msdn.com/b/deepm/archive/2010/07/16/debugging-an-oob-silverlight-business-application.aspx

+0

जैसा कि मैंने ज़ुनट्ज़ू के लिए अपनी टिप्पणी में ऊपर पोस्ट किया है, आपको भी Silverlight प्रोजेक्ट के लिए सेटिंग्स पर जाना होगा, और "डीबग" के तहत सर्वर प्रोजेक्ट को सिल्वरलाइट प्रोजेक्ट के बजाए आउट ऑफ़ ब्राउजर एप्लिकेशन के रूप में सेट करना होगा। – JoeCool

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