_()是什么意思?

时间:2018-10-30 09:27:35

标签: c# syntax

MoreLinq project's source中,我看到了以下代码:

public static IEnumerable<TSource> DistinctBy<TSource, TKey>(this IEnumerable<TSource> source,
        Func<TSource, TKey> keySelector, IEqualityComparer<TKey> comparer)
    {
        if (source == null) throw new ArgumentNullException(nameof(source));
        if (keySelector == null) throw new ArgumentNullException(nameof(keySelector));

        return _(); IEnumerable<TSource> _()
        {
            var knownKeys = new HashSet<TKey>(comparer);
            foreach (var element in source)
            {
                if (knownKeys.Add(keySelector(element)))
                    yield return element;
            }
        }
    }

我从未见过这样的return构造。 _()是什么意思,以及如何使用它?

由于我无法命名此块,I didn't found any reference

1 个答案:

答案 0 :(得分:0)

这只是一个名为_的方法,例如:

public int _()
{
     //some code here
}