दिलचस्प पोस्ट
जावास्क्रिप्ट में डॉलर मुद्रा स्ट्रिंग के रूप में मैं संख्याओं को कैसे प्रारूपित कर सकता हूं? शून्य डाउनटाइम के साथ एएसपी। नेट अनुप्रयोग को कैसे लागू करें पृष्ठ लेआउट में इसके स्थान को संरक्षित करते समय jQuery का छुपा तत्व क्या खराब खराब डिजाइन लौट रहा है? PHP का उपयोग करके कई फाइल अपलोड कैसे करें घातक त्रुटि एलएनके 1112: मॉड्यूल मशीन प्रकार 'x64' लक्ष्य मशीन प्रकार 'एक्स 86' के साथ संघर्ष क्रोम: अनक्यूट सिंटेक्स त्रुटि: इनपुट का अनपेक्षित अंत विशेषाधिकार देने का प्रयास करते हुए उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध मैं विशेषाधिकार कैसे प्राप्त करूं? एंड्रॉइड संपादनटैग संकेत आकार एक 'git push' को पूर्ववत करना सूचना इरादे से डेटा निकालें शीर्षक पृष्ठभूमि का रंग सेट करें कोणीय जेएस कस्टम फिल्टर फ़ंक्शन Iframe load पूर्ण ईवेंट कैप्चर करें लेखांकन आवेदन डॉलर राशि के लिए फ्लोट या दशमलव का उपयोग करें?

सी # के बराबर ब्लॉक के साथ?

मुझे पता है VB.Net और मेरे सी # पर ब्रश करने की कोशिश कर रहा हूँ। क्या सी # में बराबर ब्लॉक है?

धन्यवाद

Solutions Collecting From Web of "सी # के बराबर ब्लॉक के साथ?"

हालांकि सी # में सामान्य मामले के लिए कोई सीधा समतुल्य नहीं है, कन्स्ट्रक्टर कॉल के लिए C # 3 को ऑब्जेक्ट आरंभीकरण वाक्यविन्यास प्राप्त होता है:

var foo = new Foo { Property1 = value1, Property2 = value2, etc }; 

अधिक जानकारी के लिए सी # में गहराई के अध्याय 8 देखें – आप मैनिंग की वेब साइट से इसे मुफ्त में डाउनलोड कर सकते हैं।

(अस्वीकरण – हां, यह पुस्तक मेरी और अधिक लोगों के हाथों में पाने के लिए है। लेकिन हे, यह एक स्वतंत्र अध्याय है जो आपको संबंधित विषय पर अधिक जानकारी देता है …)

यह वही दृश्य सी # प्रोग्राम मैनेजर को कहना है: सी # के साथ 'कथन' क्यों नहीं है?

सी # भाषा डिजाइनरों सहित कई लोग मानते हैं कि 'के साथ' अक्सर पठनीयता को हानि पहुँचाता है, और एक आशीर्वाद से अधिक शाप है। यह एक स्थानीय चर को एक अर्थपूर्ण नाम के साथ घोषित करने के लिए स्पष्ट है, और एक वैरिएबल का इस्तेमाल किसी एकल ऑब्जेक्ट पर कई कार्यों को करने के लिए करता है, इसके बजाय एक अवरोध के संदर्भ में कोई भी प्रकार है।

जैसा कि ऊपर उपरोक्त विजुअल सी # प्रोग्राम मैनेजर कहते हैं, इसमें सीमित परिस्थितियां हैं, जहां बयान के साथ और अधिक कुशल है, वह उदाहरण देता है जब इसे एक लघुकथ के रूप में उपयोग किया जाता है ताकि बार-बार एक जटिल अभिव्यक्ति का उपयोग किया जा सके।

एक एक्सटेंशन विधि और जेनेरिक का उपयोग करके आप ऐसा कुछ बना सकते हैं जो एक बयान के बराबर है, इस तरह से कुछ जोड़कर:

  public static T With<T>(this T item, Action<T> action) { action(item); return item; } 

लैम्ब्डा सिंटैक्स का उपयोग करते हुए यह कैसे इस्तेमाल किया जा सकता है, इसका एक सरल उदाहरण लेते हुए आप इसे कुछ ऐसा बदलने के लिए उपयोग कर सकते हैं:

  updateRoleFamily.RoleFamilyDescription = roleFamilyDescription; updateRoleFamily.RoleFamilyCode = roleFamilyCode; 

इसके लिए:

  updateRoleFamily.With(rf => { rf.RoleFamilyDescription = roleFamilyDescription; rf.RoleFamilyCode = roleFamilyCode; }); 

इस तरह एक उदाहरण पर एकमात्र लाभ शायद एक अच्छा लेआउट है, लेकिन अधिक जटिल संदर्भ और अधिक गुणों के साथ यह आपको अधिक पठनीय कोड दे सकता है।

नहीं वहाँ नहीं है।

" ऑब्जेक्ट का उपयोग करना " अनुभाग में पृष्ठ के बारे में 3/4 नीचे:

वीबी:

 With hero .Name = "SpamMan" .PowerLevel = 3 End With 

सी#:

 //No "With" construct hero.Name = "SpamMan"; hero.PowerLevel = 3; 

आप तर्क संचयक पैटर्न का उपयोग कर सकते हैं

यहां इस बारे में बड़ी चर्चा:

http://blogs.msdn.com/csharpfaq/archive/2004/03/11/87817.aspx

सबसे सरल सिंटैक्स होगा:

 { var where = new MyObject(); where.property = "xxx"; where.SomeFunction("yyy"); } { var where = new MyObject(); where.property = "zzz"; where.SomeFunction("uuu"); } 

असल में अतिरिक्त कोड-ब्लॉकों बहुत आसान हैं यदि आप चर नामों का पुनः उपयोग करना चाहते हैं।

कभी-कभी आप निम्न कार्य कर सकते हैं:

 var fill = cell.Style.Fill; fill.PatternType = ExcelFillStyle.Solid; fill.BackgroundColor.SetColor(Color.Gray); fill.PatternColor = Color.Black; fill.Gradient = ... 

(EPPLus @ http://zeeshanumardotnet.blogspot.com के लिए कोड नमूना)

मैं इस तरह से प्रयोग कर रहा था:

  worksheet.get_Range(11, 1, 11, 41) .SetHeadFontStyle() .SetHeadFillStyle(45) .SetBorders( XlBorderWeight.xlMedium , XlBorderWeight.xlThick , XlBorderWeight.xlMedium , XlBorderWeight.xlThick) ; 

SetHeadFontStyle / SetHeadFillStyle सीमा के ExtMethod नीचे की तरह है:

  public static Range SetHeadFillStyle(this Range rng, int colorIndex) { //do some operation return rng; } 

कुछ ऑपरेशन करें और अगले ऑपरेशन के लिए रेंज लौटाएं

यह Linq की तरह दिखते हैं 🙂

लेकिन अब भी पूरी तरह से इसे पसंद नहीं कर सकते – प्रॉपर्टी सेट वैल्यू

 with cell.Border(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlMedium .ColorIndex = xlAutomatic 

यदि वस्तुओं के कई स्तर हैं तो आप "उपयोग" निर्देश के साथ समान कार्यक्षमता प्राप्त कर सकते हैं:

 using System; using GenderType = Hero.GenderType; //This is the shorthand using directive public partial class Test : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { var myHero = new Hero(); myHero.Name = "SpamMan"; myHero.PowerLevel = 3; myHero.Gender = GenderType.Male; //instead of myHero.Gender = Hero.GenderType.Male; } } public class Hero { public enum GenderType { Male, Female, Other } public string Name; public int PowerLevel; public GenderType Gender; } 

हम्म। मैंने कभी भी किसी भी गहराई में VB.net का इस्तेमाल नहीं किया है, इसलिए मैं यहां एक धारणा बना रहा हूं, लेकिन मुझे लगता है कि 'का प्रयोग' ब्लॉक संभवतः आप क्या चाहते हैं।

एक चर के लिए एक ब्लॉक स्कोप को परिभाषित करते हुए, नीचे दिए गए उदाहरण देखें

 using ( int temp = someFunction(param1) ) { temp++; // this works fine } temp++; // this blows up as temp is out of scope here and has been disposed 

यहाँ माइक्रोसॉफ्ट का एक लेख है जो थोड़ा और अधिक बताता है


संपादित करें: हाँ, यह जवाब गलत है – मूल धारणा गलत थी। वीबी के 'के साथ' अधिक नए सी # ऑब्जेक्ट इनिनिशियर्स की तरह है:

 var yourVariable = new yourObject { param1 = 20, param2 = "some string" };