2012-02-23 13 views
5

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

मैं निम्नलिखित कोड जो

@{ 
var code =" 
new TEL_Helper 
{ 
    URI = "[email protected]", 
    Type = TEL_TelecomType.Email, 
    Use = TEL_TelecomUse.VacationHome 
}" 

Html.SyntaxXML(code) 
} 

मैं स्ट्रिंग है जो कई पंक्तियों तक फैला और पंक्ति विराम है कैसे परिभाषित करते हैं संकलन नहीं करता है।

और समाधान मैं का इस्तेमाल किया गया था:

@{ 
var code [email protected]" 
new TEL_Helper 
{ 
    URI = '[email protected]', 
    Type = TEL_TelecomType.Email, 
    Use = TEL_TelecomUse.VacationHome 
}"; 

Html.SyntaxXML(code); 
} 

उत्तर

7

आप मानक सी # शब्दशः स्ट्रिंग शाब्दिक के लिए देख रहे हैं।

  var code = @" 
new TEL_Helper 
{ 
    URI = ""[email protected]"", 
    Type = TEL_TelecomType.Email, 
    Use = TEL_TelecomUse.VacationHome 
}" 
+0

मैंने कोशिश की, यह अभी भी कोड ब्लॉक में "{" खोलने के साथ स्ट्रिंग परिभाषा में "}" से मेल खाता है। –

+0

@BENBUNCoder: फिर आप कहीं गलती कर रहे हैं; रेजर इसका समर्थन करता है। अपने घोंसले उद्धरणों की जांच करें। – SLaks

+0

@BENBUNCoder जब आप @ verbatim वाक्यविन्यास का उपयोग करते हैं, तो आपकी स्ट्रिंग में घोंसला वाले उद्धरणों को एक दूसरे का उपयोग करके भागना पड़ता है ", इसलिए एसएलएक्स उदाहरण में आपको [email protected]" "करना होगा जैसा कि वह दिखाता है। – Dismissile

0

बस टुकड़ों में बाहर तोड़ने के लिए और स्ट्रिंग श्रेणीबद्ध:

@{ 
    var code = 
     "new TEL_Helper " + 
     "{ " + 
      "URI = \"[email protected]\"," + 
     "}"; 
} 

मत भूलना स्ट्रिंग के भीतर आपके उद्धरण से बचने के लिए।

+1

yuk। मुझे लगता है कि यह सवाल का जवाब देता है लेकिन यह इतना बोझिल है। अन्य स्रोतों से कॉपी/पेस्ट असंभव बनाता है (लेकिन नहीं -1) – ekkis