我有一个类需要一些抽象方法来调用 LinQ 表达式来获取我不知道类型的集合。
像这样的东西:
abstract List<object> Find(IEnumerable<object> items, object objectToFind)
因此,覆盖方法必须开始强制转换对象才能对它们执行 LinQ 查询。
类似的东西:
List<StrongType> things = items.Cast<StrongType>().ToList();
var thingToFind = (StrongType) objectToFind;
// <- PERFORM LINQ HERE
return result.Cast<object>().ToList();
一切正常,但如果其他人需要从抽象的类中创建另一个子类,他可能会犯一个大错误。
所以...我只需要一些建议来帮助我,也许可以通过一些代码而不仅仅是注释来简化我的技术,或者是否有可能有一些代码来强制在 Visual Studio 中预填充覆盖的类(可能带有属性?)。
我希望被理解(我的英语有点差)
谢谢 ;)