मेरा पहला एएसपी.नेट पेज बनाने का प्रयास कर रहा है। XP पर आईआईएस 5.1 मिला, .NET 4 चलाने के लिए कॉन्फ़िगर किया गया। एक नई आभासी निर्देशिका बनाई और एक .aspx फ़ाइल जोड़ा। जब मैं फ़ाइल ब्राउज़ करता हूं, तो गैर-ASCII वर्ण दूषित होते हैं। उदाहरण के लिए, एक ü (यू + 00 एफसी) को ü (यू +00 सी 3 यू + 00 बीसी) में बदल दिया जाता है, जो कि मैं नहीं जानता-यह-यूटीएफ -8 समतुल्य है।क्या मुझे गैर-ASCII वर्णों के लिए web.config चाहिए?
मैं इस का लाभ उठाने के विभिन्न तरीकों की कोशिश की है:
- मुझे यकीन है कि .aspx फ़ाइल वास्तव में UTF-8 के रूप में एन्कोड किया गया है बनाया है।
मैं मेटा टैग सेट:
<meta charset="UTF-8">
मैं तहत HTTP हेडर> IIS में फ़ाइल प्रकार .aspx
text/html;charset=utf-8
के रूप में संभाल करने के लिए वर्चुअल निर्देशिका सेट।- मैंने
ResponseEncoding="utf-8"
को<%@ Page ... %>
में जोड़ा। - मैंने
HttpUtility.HtmlEncoded()
में स्ट्रिंग डाली। अब ü को Ã ¼ (यू +00 सी 3 यू + 00 बीसी) में बदल दिया गया था।- चरित्र संदर्भ के साथ गैर- ASCII वर्ण की जगह, इस तरह के
ü
के रूप में यह 90, आज नहीं में ठीक था:
अंत में, मैं 2 तरीके कि काम मिल गया।
- चरित्र संदर्भ के साथ गैर- ASCII वर्ण की जगह, इस तरह के
इस सामग्री के साथ, वर्चुअल निर्देशिका करने के लिए एक web.config फ़ाइल जोड़ना:
<?xml version="1.0" encoding="utf-8"?> <configuration> <system.web> <globalization fileEncoding="utf-8"/> </system.web> </configuration>
fileEncoding
सेटिंग के बिना, ASP.NET पार्सर .aspx और भ्रष्ट हर गैर- ASCII चरित्र पढ़ा जाएगा फ़ाइल एन्कोडिंग का अनुमान लगाने के बिना। क्या यह कुछ ऐसा है जो आपने पेशेवरों के साथ जीना सीखा है, या क्या मुझे कुछ याद आ रहा है? क्या web.config फ़ाइल वैश्वीकरण सेटिंग्स तरीका है .aspx पृष्ठों पर "अंतर्राष्ट्रीय" वर्णों को संभालने के लिए? मुझे PHP के साथ समान समस्याएं याद नहीं हैं, इसलिए मुझे परेशान है कि यह एएसपी.नेट के साथ क्यों फसल है।
मैं इसे web.config फ़ाइल के बिना काम करने की एक और रास्ता मिल गया: के रूप में .aspx पृष्ठ सहेजें यूटीएफ -8 बाइट ऑर्डर-मार्क (बीओएम) के साथ। आम तौर पर, यूटीएफ -8 को बीओएम की आवश्यकता नहीं होती है, क्योंकि बाइट-ऑर्डर एन्कोडिंग में अंतर्निहित है, लेकिन माइक्रोसॉफ्ट के पास इसकी आवश्यकता होती है, जो संभवतः सही काम है, क्योंकि यह फ़ाइल एन्कोडिंग को और अधिक जानकारी देता है मजबूत। मुझे लगता है कि यह एक तरह का समाधान है जिसे मैं ढूंढ रहा था, लेकिन टिप्पणियां अभी भी स्वागत है। –
आपको माइक्रोसॉफ़्ट वेब प्लेटफॉर्म इंस्टॉलर स्थापित करने और आईआईएस एक्सप्रेस 7.5 और वेब मैट्रिक्स या वीएस 2010 एक्सप्रेस – Aviatrix