签入一个对象数组

sam*_*mar 1 .net c# linq .net-3.5

我有一个对象的数组说ClientsDTO[].对象中有一个属性Tin.我想检查数组中是否存在值.我有一种检查方法,即使用LINQ查询并获取满足条件的对象列表.如果返回的列表为null,则该值不存在于数组中.如果列表存在,则数组中存在值.以下是示例代码.

我想知道有没有比这更好的方式,即更优雅,更好的性能.我正在使用VS 2008,3.5框架.

ClientsDTO[] client = new ClientsDTO[10];

var lstclient = client.Where(c => c.TIN == anyNumber).FirstOrDefault();
if (lstclient == null)
{
    //value present in array
}
else
{
   //value not present
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Luk*_*keH 6

你可以使用Any带谓词的重载:

bool valueIsPresent = client.Any(c => c.TIN == anyNumber);
Run Code Online (Sandbox Code Playgroud)