Попробуйте это:
if (Method(x) == Enumerable.Empty<YourType>())
{
// Your code
}
Так как Enumerable.Empty<TResult>()
кэшируется для TResult
, он будет содержать ту же ссылку, что и пустая последовательность, полученная с Method
, и, следовательно, будет равнозначным.
Если вы не уверены, сработает ли это, запустите этот пример:
using System;
using System.Linq;
class Example
{
static void Main()
{
var first = Enumerable.Empty<Example>();
var second = Enumerable.Empty<Example>();
Console.WriteLine(object.ReferenceEquals(first, second));
}
}