मैं एक Linq MinBy विस्तार विधियदि चर सौंपा
public static class Extensions
{
public static T MinBy<T>(this IEnumerable<T> source, Func<T,int> selector)
{
T min;
int? minKey = null;
foreach (var x in source)
{
var key = selector(x);
if (minKey == null || key < minKey)
{
minKey = key;
min = x;
}
}
if (minKey == null)
{
throw new ArgumentException("source should not be empty");
}
return min;
}
}
मुझे लगता है कि मेरी तर्क सही और पठनीय है कोड करने के लिए कोशिश कर रहा हूँ सी # परीक्षण। लेकिन मैं एक निर्माण त्रुटि असाइन नहीं किए गए स्थानीय चर 'मिनट'
मैं इस बारे में क्या कर सकते हैं की
उपयोग मिल सकता है? यदि चर आवंटित किया गया है तो क्या मैं परीक्षण कर सकता हूं?
स्पष्टीकरण: एक मिनीबी फ़ंक्शन निम्न प्रश्न का उत्तर दे सकता है। किस संख्या में [-5, -2, 3] का सबसे छोटा वर्ग है?
> new List<int>{-5,-2,3}.MinBy(x => x*x) -2
नेट के न्यूनतम समारोह एक अलग प्रश्न (जो वर्गों में सबसे छोटी है)
> new List<int>{-5,-2,3}.Min(x => x*x) 4
IQueryable <> इसके लिए IENumerable <> imho से भी बेहतर होगा। – Alex
IQueryable क्या है? –
इसे एमएसडीएन पर देखें, यह एक प्रकार का संग्रह है जो क्वेरी चेनिंग को बहुत शक्तिशाली बनाता है। – Alex