2012-12-03 12 views
5

में चल रही सी # वेबसाइट में नई .cs फ़ाइल जोड़ें IIS में एक सी # वेबसाइट चल रही है। मेरे पास निर्देशिका App_code के तहत कुछ .cs फ़ाइलें हैं। मैं उन्हें सभी * .aspx.cs और * .ascx.cs फ़ाइलों में संदर्भित करने में सक्षम हूं। मेरे पास विजुअल स्टूडियो नहीं है और मुझे अपने बदलाव मैन्युअल रूप से करने की ज़रूरत है।आईआईएस

अब मुझे .aspx.cs फ़ाइल में एक वेब सेवा का उपभोग करने की आवश्यकता है। मैंने wsdl.exe का उपयोग करके प्रॉक्सी क्लास उत्पन्न किया और इसे App_code निर्देशिका के अंतर्गत रखा। लेकिन मैं अपनी aspx.cs फ़ाइल में फ़ाइल को संदर्भित करने में सक्षम नहीं हूं। मैं त्रुटि मिलती है

कंपाइलर त्रुटि संदेश: CS0246: प्रकार या नाम स्थान का नाम 'TestSearchProxy' नहीं पाया जा सका (यदि आप एक का उपयोग कर के निर्देश या एक विधानसभा संदर्भ याद कर रहे हैं?)

प्रॉक्सी नहीं करता है किसी भी नेमस्पेस को परिभाषित किया गया है और मुझे लगता है कि यह डिफ़ॉल्ट नामस्थान है। मैंने aspx.cs fiile में "*" का उपयोग करके कोई भी जोड़ा नहीं है।

क्या कोई इस समस्या को हल करने के तरीके में मेरी सहायता कर सकता है?

एक और दृष्टिकोण मैंने कोशिश की है:

मैं सीएससी आदेश का उपयोग कर प्रॉक्सी फ़ाइल से एक dll उत्पन्न और बिन निर्देशिका के अंतर्गत dll रखा। मैं अभी भी प्रॉक्सी कक्षा तक पहुंचने में असमर्थ हूं।

+0

विजुअल स्टूडियो (एक्सप्रेस) का उपयोग क्यों नहीं करें? –

+0

मैं एक मौजूदा प्रोजेक्ट पर काम कर रहा हूं और एसएलएन फ़ाइल विजुअल स्टूडियो एक्सप्रेस के नए संस्करणों के साथ संगत नहीं है। मैं सी # और नेट के लिए नया हूँ। क्या आप विजुअल स्टूडियो के बिना इन बदलावों को करने में मेरी मदद कर सकते हैं। – Bhuvana

+0

क्या आपके पास MSBuild का संस्करण है? आप इस्तेमाल कर सकते हैं .proj फ़ाइल निर्देश का उपयोग करने का प्रयास कर सकते हैं: 'msbuild/t: बनाएँ .csproj' –

उत्तर

3
पहला प्रयास के बारे में

:

  • चेक TestSearchProxy का नाम स्थान और यह स्पष्ट रूप से उपयोग करें: NameSpace.TestSearchProxy
  • कि जनरेट किया गया प्रॉक्सी कोड से नाम स्थान को निकालने का प्रयास काम नहीं करता है।
  • एएसपीनेट अस्थायी निर्देशिका को पोंछने का प्रयास करें, इससे यह ऐपकोड निर्देशिका को स्क्रैच से पुन: संकलित कर देगा।
    1. आईआईएस सेवा बंद (जो आमतौर पर पहली बात आईआईएस गर्म तैनाती तंत्र के बाद से कोशिश थोड़ा परतदार है)
    2. डेल/एस "C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ अस्थायी ASP.NET फ़ाइलें *। * "
  • प्रॉक्सी कोड में संकलन त्रुटियों के लिए जाँच, खासकर अगर wsdl.exe आप आईआईएस/.NET Framework लक्ष्य में तैनात की तुलना में एक नए ढांचा संस्करण से हो सकता है इस्तेमाल किया मंच।

बारे में दूसरा प्रयास, (बिन निर्देशिका में dll डाल):

  • आप आप कर सकते हैं, यह करने के लिए एक संदर्भ जोड़ने की आवश्यकता होगी कि में web.config फ़ाइल से अपने aspx वेबसाइट के मूल निर्देशिका:

    < विधानसभाओं >

    < विधानसभा = जोड़ें "AssemblyName, संस्करण = 1.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = 123456789ABCD1 "/ >

    </विधानसभाओं >

    या बस GAC में जोड़ने (GACUtil मैं dllname.dll) द्वारा।

  • आपको यह भी जांचना चाहिए कि डीएल को .net के सही संस्करण के साथ संकलित किया गया था, और सही आर्किटेक्चर (x86/x64) में संघर्ष से बचने के लिए यह एक पुरानी प्रणाली हो सकती है (केवल 4.0 क्लियर/32 बिट नहीं)।