সম্পাদনা: আপনি যদি কেবল একটি ব্যবহার করেন List<>
এবং আপনার কেবল সূচকের প্রয়োজন হয় তবে List.FindIndex
তা অবশ্যই সর্বোত্তম পন্থা। আমি এই উত্তরটি এখানে তাদের জন্য ছেড়ে দেব যাদের আলাদা কিছু প্রয়োজন (যেমন কোনওর উপরে IEnumerable<>
)।
Select
যে ওভারলোডটি প্রিডিকেটে একটি সূচক নেয় সেগুলি ব্যবহার করুন , সুতরাং আপনি আপনার তালিকাটিকে (সূচক, মান) জোড়ায় রূপান্তরিত করুন:
var pair = myList.Select((Value, Index) => new { Value, Index })
.Single(p => p.Value.Prop == oProp);
তারপর:
Console.WriteLine("Index:{0}; Value: {1}", pair.Index, pair.Value);
অথবা যদি আপনি কেবল সূচক চান এবং আপনি এটি একাধিক স্থানে ব্যবহার করছেন তবে আপনি সহজেই নিজের এক্সটেনশন পদ্ধতিটি লিখতে পারতেন যা পছন্দ মতো ছিল Where
, তবে মূল আইটেমগুলি ফেরত না দিয়ে, সেই আইটেমগুলির সূচকগুলি প্রত্যাবর্তনের সাথে মেলে।
int index
?