我希望删除列表中的所有元素,这些元素可以与另一个不同类型的列表中的元素进行比较,这些元素不具有共同的继承性,但我确实有一个相等功能。一个例子可能会更清楚:
鉴于脚手架
bool isSomeSortOfEqual(Bottle b, Printer p){
//implementation
}
List<Bottle> bottles = getBottles();
List<Printer> printers = getPrinters();
我想做这样的事情:
List<Bottle> result = bottles.Except(printers, (b, p => isSomeSortOfEqual(b, p));
.NET 中是否有任何内置函数,或者我应该手动实现它?除了stackoverflow上的.NET之外,与相对补充相关的问题似乎都没有处理不同类型的问题。