Bir tür bir IEnumerable
"genişletir" bir uzantı yöntemi oluşturmaya çalışıyorum, bir ifade olarak bir ifade kabul eder ve aynı tür bir IEnumerable
döndürür.Özel İfade parametre olarak döndürme ve döndürme IE1umunabilir genel tür
public static IEnumerable<T> CustomExtension<T>(this IEnumerable<T> cities, Expression<Func<T, bool>> predicate)
{
return Enumerable.Where(cities, predicate);
//the line above is wrong, doesn't compile, but it explains my intentions...
}
Sonra şöyle diyoruz:
var bigCities = cities.CustomExtension(c => c.occupants >= 1000000);
VEYA
var coldCities = cities.CustomExtension(c => c.avgTemp <= 20);
NOT: Sadece "şehir" nesneler için değil, planı jenerik bunu tutmaktır Bu nedenle aynı yöntemi aynı türlerde kullanabilirim
Şimdiden teşekkürler ...
Sadece neyi kullanmakta sorun var? Ayrıca sizin örnekleminiz de “şehirler” olmalıdır. Orada (yüklem). – DavidG
Temel olarak 'Where' uzantısı yöntemini açıklıyorsunuz. – Nkosi
Bu uzantının amaçlanan amacı nedir? Soruyorum çünkü halihazırda açıkladığınız işlevsellik zaten var. Başarmaya çalıştığınız bazı ek hedef var mı? – Nkosi