36

मेरे पास एक साइट है जो विजुअल स्टूडियो 2010 का उपयोग करके बनाई गई थी। जब मैं विजुअल स्टूडियो 2013 में अपग्रेड किया गया, तो कुछ पृष्ठों पर मुझे एक त्रुटि मिलेगी जो कहती है:विजुअल स्टूडियो 2013 "प्रकार के डुप्लिकेट संग्रह प्रविष्टि को जोड़ नहीं सकता है" mimeMap '"

अद्वितीय कुंजी विशेषता 'फ़ाइल एक्सटेंशन' पर सेट 'mimeMap' के डुप्लिकेट संग्रह प्रविष्टि को '.mp4' पर सेट नहीं किया जा सकता है।

कुछ खोज के बाद, मुझे एक ब्लॉग पर सहायक पोस्ट मिला, लेकिन चूंकि यह मुद्दा थोड़ा अलग था और मुझे इसे स्टैक ओवरफ्लो पर नहीं मिला, मैंने सोचा कि मैं सवाल पोस्ट करूँगा और यहां जवाब दूंगा।

उत्तर

82

मुद्दा यह था कि जब मैंने विजुअल स्टूडियो 2013 पर स्विच किया, तो वेब सर्वर डीबगिंग के लिए उपयोग किया गया। विजुअल स्टूडियो 2013 डिफ़ॉल्ट रूप से आईआईएस एक्सप्रेस का उपयोग करता है। हालांकि विजुअल स्टूडियो 2010 एसपी 1 आईआईएस एक्सप्रेस का समर्थन करता है, मेरी स्थापना अभी भी डिफ़ॉल्ट विजुअल स्टूडियो डेवलपमेंट सर्वर का उपयोग कर रही थी।

तरह आईआईएस 7, दृश्य स्टूडियो विकास सर्वर, डिफ़ॉल्ट रूप से mp4 माइम प्रकार परिभाषित नहीं किया तो यह है कि क्यों हम यह स्पष्ट रूप से इस तरह, web.config में जोड़ा था है:

<system.webServer> 
<staticContent> 
    <mimeMap fileExtension=".mp4" mimeType="video/mp4" /> 
</staticContent> 
</system.webServer> 

आईआईएस एक्सप्रेस, पर दूसरी तरफ, आईआईएस 8 पर आधारित है, और आईआईएस 8 एमपी 4 माइम प्रकार, और कई अन्य लोगों को डिफ़ॉल्ट रूप से परिभाषित करता है। तो जब mimeMap स्पष्ट रूप से web.config में सेट किया गया है, तो इसे डुप्लिकेट माना जाता है।

यदि आपको अपने उत्पादन वातावरण में आईआईएस 7 का समर्थन करने की आवश्यकता नहीं है, तो आप web.config से mimeMap टैग को पूरी तरह से हटा सकते हैं। आप दोनों आईआईएस 7 और आईआईएस 8 का समर्थन करने की जरूरत है, तो आप के लिए एक mimeMap निकालें टैग पहले उपयोग कर सकते हैं और उसे फिर से निर्धारित करते हैं, इस तरह:

<system.webServer> 
<staticContent> 
    <remove fileExtension=".mp4" /> 
    <mimeMap fileExtension=".mp4" mimeType="video/mp4" /> 
</staticContent> 
</system.webServer> 

आईआईएस 7 में हटाने कोई कार्य नहीं करेगा क्योंकि यह नहीं पहले ही परिभाषित नहीं है, लेकिन आईआईएस 8 में यह मूल को हटा देगा ताकि नया एक डुप्लिकेट न हो। Oliver Payen for his post on the IIS 7 and IIS 8 difference and the remove solution के लिए धन्यवाद।

12

बस इसे जोड़ने से पहले एक्सटेंशन को हटा दें।

<remove fileExtension=".mp4" /> 
<mimeMap fileExtension=".mp4" mimeType="video/mp4" /> 
+1

Grrrr ... मैं इस मुद्दे को मिल गया (और मेरी कोणीय नियंत्रकों के सबसे लदान बंद कर दिया) जब मैंने वीएस2013 से वीएस2015 तक अपग्रेड किया। इसे लाइन जोड़कर इसे ठीक किया गया। आपका बहुत बहुत धन्यवाद !! –

1

मेरे मामले में, मैं सिर्फ लाइन है कि नकली सामान कर रहा था निकाल कर समस्या हल:

<configuration> 
    (...) 
    <system.webServer> 
     <staticContent> 
      <!--mimeMap fileExtension=".json" mimeType="application/json" /--> 
     </staticContent> 
    </system.webServer> 
</configuration> 
+1

... यदि आपको आईआईएस 7 पर तैनात करने की आवश्यकता नहीं है तो यह बहुत अच्छा है। @ पेड्रो का समाधान आईआईएस 8 और ऊपर (फ़ाइल एक्सटेंशन के आधार पर) में काम करता है। – Rap

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