2011-04-06 8 views
6

मुझे एक सोपएक्सटेंशन सबक्लास (जिसे मैंने बनाया है) का उपयोग करने की आवश्यकता है, लेकिन ऐसा लगता है कि इस वर्ग को केवल "web.config" फ़ाइल के माध्यम से प्रारंभ किया जा सकता है (हालांकि मैंने पढ़ा है कि यह "app.config" फ़ाइल के माध्यम से संभव होना चाहिए - लेकिन मुझे नहीं पता कि इसे कैसे करना है)। समस्या: मेरे पास मेरी परियोजना में कोई web.config फ़ाइल नहीं है। तो मैं निम्नलिखित सामग्री के साथ मैन्युअल रूप से एक बनाया:SoapExtension लोडिंग प्राप्त करने के लिए web.config फ़ाइल कैसे बनाएं?

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.web> 
    <webServices> 
     <soapExtensionTypes> 
     <add type="MyNameSpace.MySoapExtension,MyAssemblyFileName" priority="1"/> 
     </soapExtensionTypes> 
    </webServices> 
    </system.web> 
</configuration> 

प्रत्येक SoapExtension तरीकों में distpatched breakpoints के बावजूद, कुछ भी नहीं क्रम में होता है, ऐसा लगता है कि यह nore बुलाया प्रारंभ कभी नहीं रहा है ... (मेरे SoapService ठीक initializes, लेकिन बिना कोई विस्तार)।

मुझे लगता है कि वेब.कॉन्फिग फ़ाइल मैन्युअल रूप से बनाने के लिए मैन्युअल रूप से पर्याप्त नहीं हो सकता है, इसलिए मैं सोच रहा हूं कि मेरे ऐपएक्सेंशन का उपयोग करने के लिए मेरे ऐप को ठीक से कॉन्फ़िगर कैसे करें। इसे जाना चाहिए और मेरी कक्षा, प्रक्रिया मैसेज, और चेनस्ट्रीम सामान शुरू करना चाहिए ...)।

(नोट: यह मेरी पहली SoapExtension कार्यान्वयन है, मुझे लगता है मैं क्या कर रहा हूँ के बारे में वास्तव में यकीन नहीं है)

उत्तर

11

मुझे पता चला कि कैसे करने के लिए (या वास्तव में 'जहां को') में web.config सामग्री सम्मिलित app.config फ़ाइल:

मुझे इसे 'एप्लिकेशन सेटिंग्स' और 'उपयोगकर्ता सेटिंग्स' के बाद डालना पड़ा; यह एकमात्र ऐसा स्थान है जहां यह रनटाइम पर कोई त्रुटि उत्पन्न नहीं करता है (इसलिए web.config फ़ाइल की कोई ज़रूरत नहीं है - हालांकि मैं अभी भी जानना चाहता हूं कि ऐप को कॉन्फ़िगर कैसे करें, अगर किसी के पास जवाब है ...)।

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <configSections> 
    </configSections> 
    <applicationSettings> 
    </applicationSettings> 
    <userSettings> 
    </userSettings> 
    <system.web> 
     <webServices> 
      <soapExtensionTypes> 
      <add type="MyNameSpace.MySoapExtension,MyAssemblyFileName" priority="1"/> 
      </soapExtensionTypes> 
     </webServices> 
    </system.web> 
    <system.serviceModel> 
     <bindings /> 
     <client /> 
    </system.serviceModel> 
</configuration> 

मेरा साबुन एक्सटेंशन अब सही ढंग से प्रारंभ किया गया प्रतीत होता है, संदेश फ़िल्टरिंग ठीक काम करता है।

0

@ सोल्शो की टिप्पणी से संबंधित मैं अपने यूनिट परीक्षण (XUnit) को काम करने के लिए नहीं मिला, मेरा ऐप.कॉन्फिग अंत में इस तरह दिख रहा था।

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <configSections> 
    </configSections> 
    <system.web> 
    <webServices> 
     <soapExtensionTypes> 
     <add type="System.Common.SOAPExtensions.TraceExtension, System.Common" priority="1"/> 
     </soapExtensionTypes> 
    </webServices> 
    </system.web> 
</configuration> 
संबंधित मुद्दे