使用List <>.包含不同类型的()

Hae*_*ian 1 c#

我有一个自定义类型的通用列表

List<MyType> list = new List<MyType>();
Run Code Online (Sandbox Code Playgroud)

我已经重写了MyType的.Equals,以便在比较字符串或MyType时它可以正常工作.我的问题是 - 如果List只包含MyType,有没有办法使用List.Contains(string)?

我意识到还有其他方法可以做到这一点(例如在那里创建一个MyType对象而不是字符串),但有没有办法做到这一点而不必扩展List?

And*_*bel 8

使用linq:

bool hasSugar = list.Any(i => i.Equals("sugar"));
Run Code Online (Sandbox Code Playgroud)