C#泛型方法我想創建這樣一個泛型方法:這需要多個類
public static List<T> Filter(this List<T> list, string search) where T : class
{
return list.Where(t => t.Name.FormatSearch().Contains(search)).ToList();
}
而且是ALBE來調用不同的類此方法,並得到相同的結果,因爲這兩個類都有大多相同的屬性。
class A {
public string Name;
}
class B {
public string Name;
}
var a = new List<A>();
var b = new List<B>();
a.Filter();
b.Filter();
我期望過濾器方法對A和B都以相同的方式工作。我在第一種方法中丟失了什麼?
你的代碼出了什麼問題? –
聽起來像你想'A'和'B'有一個共同的界面也許 - 這不是很清楚(我)你在問什麼。 –
@AntonioPapa你應該創建接口'IName'並在那裏聲明'Name'屬性。 'A'和'B'應該實現'IName'。之後寫'T'參數約束如下'where T:IName'。之後,你將避免t.Name ...下的紅線。 – tchelidze