之前,我在 .NET Framework 3.5 上使用它,它工作正常:
If (New String() {"ER", "PM", "EM", "OC"}).Contains(Session("Position")) Then
'Some codes
End If
现在我正在做一个使用 .NET 2.0 运行的项目,但上面的代码不起作用,它给了我这个:
'Contains' is not a member of 'System.Array'.
如何在不从 2.0 迁移到 3.0 的情况下实现上述代码 (.Contains)?有什么选择吗?
最佳答案
你将不得不重写你的代码,就像这样......
If (Array.IndexOf(New String() {"ER", "PM", "EM", "OC"}), Session("Position")>-1) Then
'Some codes
End If
集合初始化器取决于编译器,而不是目标框架,所以这应该可以工作。
编辑:修复了错误的方法/条件。我在处理这个问题时被一个漏水的水槽打断了,在我确认它可以工作之前,我并不打算发布它。
关于VB.NET - Array.Contains 的替代品?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7775582/