मेरे पास परियोजनाओं की एक सूची है और यदि मैं एक परियोजना का चयन करता हूं तो मैं पिछले और अगले विकल्प का विकल्प दूंगा। मैंने एक त्वरित कोड उदाहरण जोड़ा है लेकिन मुझे आशा है कि ऐसा करने के लिए एक बेहतर/तेज़ तरीका उदाहरण के लिए 500 परियोजनाएं होंगी।लिंक से पहले और वर्तमान में लिंक/सी # के साथ सूची में आइटम कैसे प्राप्त करें?
क्या शायद एक linq विकल्प या कुछ है?
मैंने एन्युमरेटर की जांच की है लेकिन यह केवल एक चाल को बचाता है अगला एन वर्तमान सेट नहीं कर सकता है।
त्वरित उदाहरण:
परियोजनाओं एक शब्दकोश
परियोजना एक keyvaluepair कि शब्दकोश में मौजूद है
var match = false;
var save = new KeyValuePair<ExtendedProjectLightPlan, Page>();
var before = new KeyValuePair<ExtendedProjectLightPlan, Page>();
var after = new KeyValuePair<ExtendedProjectLightPlan, Page>();
foreach (var p in projects)
{
before = save;
save = p;
if (match)
{
after = p;
break;
}
if (p.Key.Id == project.Key.Id)
{
match = true;
}
}
मेरी गलती, मेरा मतलब है एक शब्दकोश। उदाहरण को पहले से ही – Marco
संपादित करें इस कोड के साथ यदि आइटम पहला तत्व है, यानी इंडेक्स 0 या अंतिम पर, तो आपको अपवाद मिलेगा। –
@ मार्को: शब्दकोश में पहले और बाद में क्या होता है? क्या आप एक ['SortedDictionary'] (http://msdn.microsoft.com/en-us/library/f7fta44c.aspx) का उपयोग कर रहे हैं? –