8

मैंने हाल ही में विजुअल स्टूडियो 2010 के वेब परिनियोजन उपकरण में web.config स्वचालित परिवर्तन की खोज की है। यह अच्छी तरह से काम कर रहा है, लेकिन मेरे पास एक परिदृश्य है जिसे मैं काम नहीं कर रहा हूं। मान लें मैं अपने Web.Release.config के लिए निम्नलिखित जड़ Web.configवेब.कॉन्फिग परिवर्तन: लोकेटर अभिव्यक्ति से मेल खाने वाले सभी नोड में परिवर्तन कैसे लागू करें?

<services> 
    <service name="Service1"> 
    <endpoint address="" binding="customBinding" bindingConfiguration="LargeBufferBinding" 
     contract="Service1" /> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service> 
    <service name="Service2"> 
    <endpoint address="" binding="customBinding" bindingConfiguration="LargeBufferBinding" 
     contract="Service2" /> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service> 
    <service name="Service3"> 
    <endpoint address="" binding="customBinding" bindingConfiguration="LargeBufferBinding" 
     contract="Service3" /> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service> 
</services> 

है, मैं साथ mexHttpBinding के बंधन हटा दिया जाना चाहिए सभी endpoint नोड्स चाहते हैं।

मैं का उपयोग किया है मेरी Web.Release.config में निम्नलिखित:

<services> 
    <service> 
    <endpoint binding="mexHttpBinding" xdt:Locator="Match(binding)" xdt:Transform="Remove" /> 
    </service> 
</services> 

बहरहाल, यह केवल पहले मैच के बाद लोगों को निकाल देंगे, Service1 में, लेकिन नहीं। मैंने नोड को ढूंढने के विभिन्न तरीकों की कोशिश की है, एंडपॉइंट और सर्विस नोड पर, लेकिन केवल पहला मैच बदल दिया जाता है।

क्या हटाए जाने के लिए सभी <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> प्राप्त करने का कोई तरीका है?

धन्यवाद।

+0

क्लेमेंट सिर्फ एक नोट के रूप में आप नीचे दिए गए जवाब को स्वीकार करना चाहिए के बजाय उस पर टिप्पणी। –

उत्तर

12

मैं सिर्फ यह और का उपयोग कर की कोशिश की है RemoveAll निकालें के बजाय चाल करने के लिए लगता है:

<services> 
    <service> 
    <endpoint binding="mexHttpBinding" xdt:Locator="Match(binding)" xdt:Transform="RemoveAll" /> 
    </service> 
</services> 
+0

उसने ऐसा किया। धन्यवाद ! – Clement

+0

क्या ऐसा कुछ ऐसा है जो सभी को सम्मिलित करने के लिए काम करेगा? InsertAll पहचाना नहीं गया है। – grimus

+0

@grimus क्या आपको "सभी सम्मिलित करें" प्रश्न का कोई समाधान मिला? –