पर फोरमेट अपवाद मैं string.Format
को एक पठनीय स्ट्रिंग पर चला रहा हूं जिसमें HTML + जावास्क्रिप्ट का थोड़ा सा हिस्सा है लेकिन मुझे इसके बजाय System.FormatException
मिलता है।string.Format सिस्टम फेंकता है। एचटीएमएल + जावास्क्रिप्ट
यह मेरा प्रारूप स्ट्रिंग है:
<script type="text/javascript">
function {0}_showHideFieldWindow() {
if ({0}.IsCustomizationWindowVisible()) {
{0}.HideCustomizationWindow();
} else {
{0}.ShowCustomizationWindow();
}
}
</script>
सभी मैं कर रहा हूँ ऑब्जेक्ट नाम में गुजर रहा है। इस तरह:
string.Format(javascript, "grid");
, मानक एस्केप वर्ण नहीं है सी # में बैकस्लैश (\\)? यही है, घुंघराले ब्रेसिज़ को "{{}}" के बजाय "\ {\}" से बच नहीं जाना चाहिए? मैं समझता हूं कि डबल ब्रेसिज़ काम करते हैं, लेकिन क्या यह सबसे अच्छा अभ्यास है? –
चूंकि वह स्ट्रिंग से पहले @ प्रतीक का उपयोग कर रहा है, इसलिए बैकस्लैश का अर्थ शाब्दिक रूप से बैकस्लैश के रूप में किया जाएगा, इसलिए –
से बचने वाला कुछ भी नहीं होगा जॉन सही है - क्योंकि यह एक क्रियात्मक स्ट्रिंग है क्योंकि कुछ ऐसे भाग निकलते हैं जिन्हें आप कर सकते हैं और उनमें से सभी शामिल हैं चरित्र को दोगुना करना (यानी {बनें {{, "बन जाता है", आदि) –