Конечно, вы можете, хотя вы, возможно, захотите пощадить то, что вы делаете здесь, чтобы не загромождать каждый объект. Метод расширения, который мне нравится использовать для Object, - это метод IsIn (), который функционирует аналогично SQL IN (). Приятно говорить такие вещи, как:
If someString.IsIn("a", "b", "c") Then
DoSomething()
Else If someInt.IsIn(1, 2, 3) Then
DoSomethingElse()
Else If someObj.IsIn(1, "q", #7/1/2010#) Then
DoSomethingTheThirdWay()
End If
РЕДАКТИРОВАТЬ -
Добавлена реализация метода расширения IsIn () ниже, чтобы помочь комментатору.
Imports System.Runtime.CompilerServices
Public Module ObjectExtensions
<Extension()>
Public Function IsIn(obj As Object, ParamArray values() As Object) As Boolean
For Each val As Object In values
If val.Equals(obj) Then Return True
Next
Return False
End Function
End Module