where 句 " _list.Where<T>(whereClause) "で 3 つのエラーに直面しています。どうすれば解決できますか?
エラー 1
'System.Collections.Generic.List<FuncMetodunuTaniyalim3.DataModel.Customer>' には 'Where' の定義と最適な拡張メソッド オーバーロード 'System.Linq.ParallelEnumerable.Where<TSource>(System.Linq.ParallelQuery) が含まれていません<TSource>, System.Func<TSource,int,bool>)' に無効な引数があります
エラー 2インスタンス引数: 'System.Collections.Generic.List<FuncMetodunuTaniyalim3.DataModel.Customer>' から 'System.Linq. ParallelQuery<T>'
エラー 3引数 2: 'System.Func<T,bool>' から 'System.Func<T,int,bool>' に変換できません
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace FuncMetodunuTaniyalim3
{
public class Search<T> where T : class
{
private List<DataModel.Customer> _list;
public Search()
{
_list = new List<DataModel.Customer>();
}
public int Find(Func<T, bool> whereClause)
{
return _list.IndexOf(_list.Where<T>(whereClause).FirstOrDefault<T>());
}
}
//Repository
public class DataModel
{
private IEnumerable<Customer> customers;
public List<Customer> Customers
{
get { return customers.ToList(); }
}
public DataModel()
{
customers = new[] { new Customer(){ Id=1, Name="cbfghg", SurName="hfh", Age=29, Dept=0, Income=100},
new Customer(){ Id=2, Name="hfghfhf", SurName="erhfghfhfhem", Age=0,Dept=45, Income=300},
new Customer(){ Id=3, Name="hgfhgfhf", SurName="balhfghgfhfgh", Age=33, Dept=20, Income=150}};
}
//Model
public class Customer
{
public int Id { get; set; }
public string Name { get; set; }
public string SurName { get; set; }
public int Age { get; set; }
public int Income { get; set; }
public int Dept { get; set; }
public Customer()
{
}
}
}
}