2010-11-19 14 views
6

मेरे पास ईमेल भेजने के लिए उपयोगिता वर्ग है। ईमेल एचटीएमएल के रूप में उत्पन्न होते हैं।.NET क्लास लाइब्रेरी में HTML एन्कोडिंग

मैं विशेष वर्ण जो ठीक से प्रदर्शित नहीं हो रहे हैं एन्कोडिंग के साथ समस्या आ रही है।

हालांकि, मैं HtmlEncode का उपयोग करने के तरीके के बारे में काम नहीं कर सकता क्योंकि मेरे पास वर्तमान HttpContext नहीं है। क्या .Net कक्षा है जो विशेष वर्णों को एचटीएमएल कोड में Asp.Net के तहत चलाने के बिना अनुवाद करेगी?

मुझे आशा है कि समझ में आता है, मैं कैसे यह सब सामान काम करता है के बारे में थोड़ा परतदार हूँ। धन्यवाद!

उत्तर

10

आप System.Web नाम स्थान आयात और HttpUtility वर्ग का उपयोग कर सकते हैं। Altohugh यह एक वेब असेंबली है मुझे नहीं लगता कि यह काम करने के लिए एक वेब वातावरण के तहत चलने के लिए यह निष्पक्ष है।

+0

धन्यवाद, यकीन नहीं है कि मुझे यह क्यों नहीं मिला! – fearofawhackplanet

+9

सिस्टम लाइब्रेरी पर निर्भरता जोड़ना कक्षा पुस्तकालय के लिए एक अच्छा विचार नहीं है। इसके बजाय System.Net.WebUtility.HtmlEncode() का उपयोग करें। – saille

20

मेरा मानना ​​है कि System.Net.WebUtility.HtmlEncode इस कार्यक्षमता प्रदान करेगा। MSDN reference for WebUtility.HTMLEncode

+1

+1 इनकोडिंग किया जाएगा, लेकिन जो .NET 4 है केवल इसलिए मैं दुर्भाग्य से उपयोग नहीं कर सकते। – fearofawhackplanet

2

आप System.Web से HttpUtility वर्ग का उपयोग कर सकते हैं।

2

आपको WPL की AntiXSS लाइब्रेरी का उपयोग करने में वास्तव में देखना चाहिए।

  1. आप System.Web की जरूरत नहीं है !

  2. यह एक सफेद सूची समावेशन सिद्धांत का उपयोग करता है (सिस्टम। वेब एन्कोडिंग ब्लैक-लिस्टिंग का उपयोग करता है)। केवल अक्षर हैं जो सुरक्षित होने के लिए जाना जाता है विश्वसनीय होंगे और सभी दूसरों को ठीक से पहले होने के लिए

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